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 4 10 13 12 11 7 4 3 0 0 0 0 3 9 13 19 24 20 13 6 0 6 12 16 18 13 4 1 0 1 3 3 2 6 9 10 8 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 7 8 8 7 3 2 4 11 22 28 34 36 34 31 28 29 30 32 32 31 30 28 26 26 29 35 43 56 48 38 30 24 19 16 15 15 15 15 15 17 20 21 20 19 19 20 20 21 22 22 22 23 24 25 26 26 25 25 24 24 23 21 20 18 18 17 17 18 19 20 21 23 24 26 27 39 45 48 48 48 47 46 47 48 48 48 49 48 48 48 49 51 53 56 59 60 60 59 56 53 50 48 46 44 45 47 49 50 50 50 49 47 47 48 50 54 59 62 61 58 54 53 58 64 65 64 64 67 73 77 77 71 62 52 46 45 46 49 52 54 56 57 55 52 48 46 48 51 54 56 56 55 54 52 50 49 52 58 64 69 72 74 72 65 58 53 52 52 51 50 48 46 44 41 40 41 42 44 44 44 45 45 45 45 46 46 46 46 46 46 46 46 47 46 46 48 50 53 55 55 55 56 58 59 59 56 51 46 41 38 38 41 46 51 56 58 59 60 64 71 78 85 88 91 92 93 92 90 87 86 86 87 88 88 88 88 89 90 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 9 12 13 13 12 9 2 0 0 0 2 8 13 19 26 22 12 4 0 3 9 15 19 17 9 1 0 0 0 0 0 6 11 14 14 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 3 7 8 7 7 6 8 14 27 36 41 40 35 29 26 27 29 30 29 28 27 27 28 30 35 43 53 51 42 32 24 18 15 14 13 14 13 13 12 14 16 18 20 20 19 18 19 20 20 21 22 23 24 25 26 26 25 25 25 24 24 23 22 21 19 18 17 17 17 18 19 20 21 23 24 26 36 44 47 49 48 48 48 48 48 48 48 48 47 47 47 48 49 51 54 57 59 59 58 55 52 49 47 45 46 47 48 48 47 46 45 45 45 46 49 52 57 59 59 56 52 53 61 66 65 62 59 61 67 70 70 66 58 50 45 44 44 45 46 46 46 44 42 40 37 36 38 43 47 49 49 47 46 45 46 49 54 60 63 64 64 65 66 65 62 59 57 55 52 49 48 46 44 40 39 39 40 41 42 42 43 42 42 43 44 46 46 46 45 44 44 43 42 41 40 42 47 52 55 56 56 57 59 60 61 62 61 59 57 54 50 47 46 47 48 50 53 56 60 65 71 77 79 81 82 82 82 82 81 81 82 82 83 82 82 81 81 81 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 10 13 15 15 10 1 0 0 2 5 9 16 19 18 10 0 0 0 5 11 16 16 10 2 0 0 0 0 0 4 10 16 18 14 6 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 2 7 7 6 7 13 24 33 42 44 38 31 26 25 27 28 28 27 26 26 28 31 35 40 46 57 44 35 26 19 15 13 12 12 8 3 4 12 13 16 19 20 20 18 17 17 18 19 20 21 22 23 24 24 25 25 25 25 24 24 23 23 22 21 19 18 17 16 16 16 17 19 20 22 24 26 34 44 47 48 48 48 48 48 48 48 48 47 46 46 45 46 47 49 52 55 56 56 55 53 50 47 46 47 47 46 44 43 42 42 42 43 45 47 50 54 56 56 55 53 56 63 67 66 62 58 60 63 66 66 64 59 52 48 46 45 45 44 42 39 36 33 30 28 28 29 33 37 41 42 42 42 44 46 50 55 58 58 57 57 59 64 68 68 64 58 53 47 44 44 43 42 38 37 37 37 38 39 40 39 39 39 40 42 45 46 46 45 44 42 41 39 39 40 42 45 48 50 52 54 55 57 57 58 60 61 61 61 61 59 58 57 55 54 53 55 56 59 62 65 67 68 68 68 68 67 66 67 69 71 73 74 74 73 72 72 72 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 9 15 18 15 2 0 0 0 0 0 8 12 11 6 0 0 0 0 4 8 9 7 1 0 0 0 0 0 0 5 12 17 18 13 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 1 1 4 6 13 26 35 42 39 32 27 25 26 28 28 27 25 25 26 29 33 38 41 45 51 41 31 23 16 12 6 6 5 2 0 2 12 14 17 19 20 20 18 17 17 18 19 20 21 22 22 22 23 24 24 25 25 24 24 23 23 22 21 20 19 18 16 16 10 9 17 18 20 22 23 25 30 43 45 47 48 49 49 49 48 48 47 46 44 44 43 44 45 47 49 51 52 52 51 49 46 45 45 45 43 41 38 40 40 41 42 43 45 47 50 52 54 55 55 59 64 66 65 62 60 61 62 64 64 64 60 54 49 47 47 46 45 42 39 35 32 28 26 23 22 24 28 33 37 40 43 46 49 52 54 53 51 50 50 54 61 66 66 60 52 45 37 34 36 38 39 37 35 34 34 34 36 37 37 36 36 37 39 42 44 45 45 44 43 42 42 43 45 48 49 48 46 46 48 52 54 54 54 55 57 58 59 60 60 60 61 62 62 62 60 59 58 59 60 61 61 61 60 59 56 55 55 56 60 64 66 66 66 66 67 67 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 12 17 19 11 3 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 10 13 10 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 1 4 12 23 29 32 29 25 24 24 27 28 28 26 25 25 27 30 33 36 38 40 41 38 29 20 13 6 0 0 0 0 2 8 15 17 19 20 20 19 19 19 18 18 19 20 20 21 21 22 22 22 24 24 24 24 23 23 23 22 22 21 20 20 18 17 12 8 6 6 16 19 20 21 23 26 38 42 45 46 47 47 46 46 45 44 43 42 41 41 41 42 43 45 46 47 48 47 46 44 43 42 40 35 26 38 40 40 41 42 43 45 47 50 53 55 58 61 63 64 63 61 59 60 62 63 64 62 57 50 46 44 45 45 45 43 40 37 34 29 25 21 20 20 24 30 35 39 44 48 52 53 51 48 45 43 43 48 54 58 57 51 43 34 26 25 27 32 36 36 35 33 32 32 33 34 35 35 36 36 37 39 41 42 43 43 44 45 47 50 54 56 56 52 49 47 48 49 52 53 53 53 54 56 56 56 57 58 60 62 63 63 61 60 59 59 59 60 61 60 59 58 54 53 54 56 58 61 64 65 66 67 69 70 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 4 0 0 0 0 0 0 0 0 0 0 0 3 8 14 18 15 8 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 1 5 12 14 14 13 17 22 25 27 28 28 28 27 27 28 30 30 31 33 36 39 36 29 20 10 0 0 0 0 0 4 15 18 20 20 20 20 20 20 20 19 19 19 19 21 21 21 21 21 22 23 24 24 24 23 22 22 22 21 20 20 20 20 19 17 11 0 0 6 7 12 18 19 20 24 27 34 42 43 43 42 41 40 39 38 40 39 39 37 35 38 40 41 42 44 45 46 44 41 38 34 29 37 40 41 40 40 40 41 43 46 49 52 56 59 60 61 61 60 58 57 57 58 59 59 56 49 43 39 38 39 40 41 41 39 37 33 29 25 21 19 20 22 26 29 32 38 44 50 53 50 45 40 37 38 42 47 49 48 44 36 25 19 19 23 28 35 38 37 35 33 32 32 32 33 33 34 35 36 36 37 38 39 41 43 47 52 56 59 60 61 58 55 53 53 55 57 57 57 55 55 56 56 55 56 57 59 60 62 62 61 61 61 61 61 62 63 64 64 62 59 59 60 62 62 63 67 70 73 74 75 77 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 5 0 0 0 0 0 0 0 0 0 0 0 1 4 9 14 17 13 5 0 0 0 0 0 0 0 1 6 6 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 1 3 4 3 6 10 16 24 25 27 28 29 30 30 30 29 28 27 29 33 37 36 29 20 11 0 0 0 0 0 3 13 18 20 20 20 20 20 20 19 19 18 18 19 21 21 22 21 21 21 22 22 23 23 23 22 22 21 20 19 19 20 20 20 18 14 5 0 0 0 3 10 15 16 18 20 24 27 28 27 26 24 23 22 23 34 36 35 30 24 32 35 37 39 40 42 43 42 39 36 34 34 39 41 41 40 40 40 42 44 47 50 52 55 58 58 58 58 56 55 53 53 54 56 57 52 44 38 35 34 34 34 34 34 34 33 31 28 25 23 22 21 21 19 18 18 22 30 42 48 48 44 39 35 34 38 44 46 44 38 28 18 13 13 16 24 33 39 38 36 34 32 30 29 28 29 30 31 31 32 32 33 35 37 40 46 51 55 57 58 60 60 60 60 60 61 63 64 63 62 60 59 58 59 60 61 61 61 63 64 64 64 65 66 66 65 66 68 68 66 65 65 66 66 66 67 70 73 76 79 82 83 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 5 0 0 0 0 0 0 0 0 0 0 0 0 1 4 9 15 15 9 2 0 0 0 0 0 0 0 3 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 5 8 11 16 16 23 27 30 32 33 32 30 28 27 27 30 34 34 30 22 12 0 0 0 0 0 0 0 13 15 17 19 19 19 19 19 18 18 18 20 21 22 22 21 21 20 21 22 22 23 23 22 21 19 17 16 17 18 19 19 18 17 15 5 1 0 0 2 8 13 15 16 18 19 20 20 20 19 18 18 19 21 22 22 22 22 22 29 34 36 38 40 40 39 37 35 36 38 39 40 40 40 40 42 44 47 49 51 52 54 55 56 57 56 55 52 51 51 54 58 59 53 44 37 34 33 32 30 29 28 28 27 27 27 27 26 25 24 21 15 12 11 13 20 32 39 42 42 39 36 35 39 44 46 43 33 21 12 8 6 7 12 24 33 35 34 32 30 27 24 23 22 23 23 24 24 25 26 28 30 34 41 47 49 49 51 54 58 62 64 66 66 69 69 69 69 68 67 64 64 66 67 68 67 69 71 72 72 72 72 71 70 70 69 70 70 69 68 68 68 69 69 72 76 80 82 84 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 3 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 11 14 11 5 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 8 9 9 10 16 23 29 33 34 33 31 29 27 26 27 30 31 29 22 13 0 0 0 0 0 0 0 0 0 8 16 18 18 18 18 18 19 19 20 20 21 21 21 20 20 20 21 22 23 23 22 20 17 15 14 15 16 17 18 18 18 17 15 6 3 3 3 3 10 12 13 14 15 16 17 17 17 16 16 17 18 19 20 21 21 22 23 30 35 37 38 37 36 35 35 36 38 38 39 39 40 41 44 46 49 50 51 51 52 54 56 58 58 56 52 51 53 58 63 63 54 44 40 38 37 35 32 29 26 24 24 25 26 28 30 30 28 23 15 12 11 13 18 28 35 37 36 35 35 38 43 45 44 38 28 16 9 5 3 2 3 11 20 25 26 25 23 20 18 16 15 14 14 14 15 16 17 19 22 27 34 40 41 41 43 47 53 60 65 67 68 71 73 73 74 74 74 72 72 71 72 74 74 77 79 81 82 81 80 78 76 75 74 73 72 72 71 70 71 71 73 77 81 84 85 84 84 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 10 9 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 6 8 9 10 19 28 33 35 34 32 29 26 24 24 25 27 26 18 4 0 0 0 0 0 0 0 0 0 0 5 16 16 17 18 19 20 20 20 19 19 19 19 19 19 20 22 23 23 23 21 18 16 14 14 14 16 17 18 18 19 18 17 16 14 12 11 11 11 11 11 12 12 14 15 16 16 16 16 16 16 17 18 20 21 22 30 34 35 36 35 33 32 33 35 36 37 36 37 38 40 43 45 48 49 49 49 49 51 54 57 61 62 59 54 53 56 62 65 62 52 45 42 42 41 40 38 34 30 27 26 25 26 29 32 33 32 27 21 18 18 20 24 31 32 29 26 25 30 38 44 44 39 32 23 15 10 6 3 0 0 3 8 12 16 17 16 15 14 13 12 9 8 8 8 9 9 10 13 18 23 27 31 36 39 43 49 55 60 64 65 69 72 75 76 77 78 77 75 74 74 76 79 83 85 86 87 88 88 86 83 80 80 80 79 78 77 76 77 78 80 85 88 90 90 87 83 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 6 8 9 16 25 32 35 33 27 21 17 13 12 12 20 18 7 0 0 0 0 0 0 0 0 0 0 0 1 3 14 17 18 19 20 20 18 17 17 17 17 18 18 20 21 22 23 22 19 17 15 14 14 15 16 17 19 22 29 31 21 18 16 15 14 13 12 10 10 9 10 13 15 16 17 17 16 16 16 17 18 19 21 30 34 30 24 23 22 22 23 30 36 36 35 35 36 39 42 45 46 47 47 48 48 50 52 57 61 63 63 59 56 56 60 64 62 56 47 44 43 44 44 43 42 39 35 32 30 29 29 30 32 34 34 32 30 28 29 31 33 34 28 21 17 18 26 34 38 36 31 25 22 18 14 10 6 4 2 2 2 4 7 11 12 14 16 17 16 13 11 10 9 7 5 5 6 8 11 14 20 27 36 43 46 48 52 56 59 64 69 72 75 78 78 77 75 72 71 73 78 84 86 86 85 88 89 88 86 84 85 87 88 89 89 88 87 88 90 93 94 94 93 89 83 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 9 10 18 30 31 26 14 8 4 0 0 0 8 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 13 18 18 18 17 15 14 14 14 14 16 17 18 20 21 20 19 17 16 16 16 16 15 16 17 19 23 33 34 23 19 18 18 18 16 14 11 9 8 9 13 15 17 17 17 17 17 16 16 17 18 20 25 25 23 19 17 17 20 30 37 38 36 34 35 38 42 45 46 45 45 45 47 49 53 58 63 65 64 61 57 56 58 60 58 52 44 42 42 42 43 44 43 42 40 39 37 35 33 32 31 32 34 34 35 36 37 39 40 40 35 24 17 14 15 22 27 28 27 25 26 28 26 22 18 14 11 7 4 2 2 2 5 10 14 18 21 22 22 21 19 16 12 9 6 5 5 6 8 13 19 27 35 41 45 46 51 55 60 64 68 71 75 76 74 72 70 69 71 74 78 80 78 76 79 81 82 82 82 85 90 93 95 96 96 95 96 96 96 97 97 96 90 84 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 6 10 15 24 23 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 5 4 4 3 2 2 1 1 2 13 14 16 17 17 17 16 16 16 17 17 17 16 16 17 21 27 34 34 29 23 19 20 19 17 14 11 9 9 10 12 14 16 16 17 16 16 16 16 18 19 20 19 18 16 14 13 16 21 32 40 38 35 35 38 42 46 46 44 42 42 44 49 54 60 65 67 65 61 57 55 56 56 53 47 41 38 38 40 40 40 40 40 40 40 40 40 38 36 34 32 31 30 31 34 37 39 40 41 39 32 23 17 15 16 19 20 20 21 24 31 37 37 33 28 23 20 14 10 6 3 2 2 7 12 16 19 22 23 24 23 22 20 18 14 11 8 8 8 10 14 18 24 31 38 45 52 56 60 63 65 67 71 72 70 68 67 68 70 71 71 71 71 68 68 70 72 74 75 79 85 89 93 95 96 96 96 97 97 97 97 95 91 86 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10 20 19 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 7 3 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 2 2 8 13 13 12 13 14 16 17 18 17 16 16 17 22 31 33 33 33 26 20 20 19 17 14 11 10 9 10 12 14 15 16 16 16 16 16 17 18 19 20 18 15 13 12 14 18 29 37 39 33 25 34 42 48 48 44 39 38 41 47 54 61 67 68 66 61 57 54 55 54 51 46 40 37 37 37 37 36 35 35 35 36 38 39 40 40 38 36 32 28 25 25 28 30 31 31 32 31 28 23 20 18 18 17 16 16 19 25 32 38 40 39 37 33 26 20 14 10 7 6 4 6 9 11 12 14 16 18 20 21 22 22 21 19 16 12 10 10 12 14 17 21 28 36 45 53 60 64 66 67 68 69 68 68 68 69 71 71 69 68 72 71 69 68 69 70 71 73 77 81 85 90 91 92 93 93 93 93 94 92 90 88 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 9 20 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 1 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 1 2 2 2 10 12 14 16 17 17 17 17 17 21 27 28 28 28 23 19 18 18 16 14 12 11 11 12 14 15 16 16 17 17 17 17 18 19 20 19 17 14 13 14 18 27 36 35 28 24 22 38 48 50 46 37 33 37 44 54 63 69 69 64 59 56 54 55 55 52 47 42 38 38 39 39 36 34 32 33 34 36 37 38 40 40 38 35 32 28 23 12 10 9 12 19 22 25 26 26 24 22 20 17 16 18 21 26 30 33 35 37 38 37 31 25 20 17 14 13 11 10 9 9 8 8 9 11 13 16 20 22 22 23 21 16 13 12 12 14 15 18 22 29 36 44 51 57 61 64 65 66 67 69 70 70 72 72 70 70 75 77 77 76 75 75 74 73 73 75 79 83 84 86 87 87 87 87 86 86 86 88 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 3 6 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 9 10 12 12 14 15 16 17 17 17 17 18 18 19 19 18 18 17 17 16 16 15 14 14 14 15 15 16 17 17 18 18 18 18 19 20 20 19 17 15 16 19 27 37 35 26 19 19 31 45 50 46 36 25 33 44 55 65 72 71 62 55 52 54 56 58 54 49 45 42 42 43 42 39 35 33 34 37 38 38 38 38 38 38 36 34 32 30 26 12 4 0 2 7 16 22 26 28 26 23 19 17 19 22 25 26 25 25 28 31 34 35 31 28 26 22 19 18 18 17 16 13 12 9 7 6 7 10 14 20 23 25 25 20 16 14 15 16 17 19 22 26 31 37 42 46 50 53 55 57 59 62 65 67 69 69 70 71 75 79 81 83 83 81 81 79 78 78 79 81 82 83 83 82 83 84 84 83 83 84 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 6 6 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 13 13 13 13 13 14 16 17 17 17 17 17 17 17 17 16 16 16 16 16 16 16 16 17 17 17 17 17 18 18 19 19 19 19 19 20 19 19 18 18 20 25 39 37 26 18 17 26 42 49 43 32 24 22 41 57 68 74 71 59 51 49 52 57 60 59 53 48 45 45 46 46 42 37 33 33 37 40 40 38 36 36 36 35 34 34 35 34 31 25 13 4 0 1 16 22 24 23 19 16 17 20 25 29 29 25 21 21 23 25 28 30 30 30 29 27 24 23 22 22 23 22 22 18 13 8 5 6 10 17 23 27 28 25 22 19 17 17 18 20 23 26 29 32 35 38 41 44 46 48 50 52 54 56 58 61 65 69 72 74 76 78 78 78 77 77 77 77 78 81 83 83 81 80 83 84 83 82 81 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 8 8 6 1 0 0 0 0 0 0 0 4 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 2 7 6 6 5 8 14 16 17 17 16 16 15 15 15 15 15 15 15 15 15 16 18 19 22 19 18 18 18 18 20 26 28 24 20 20 20 19 19 19 25 36 40 40 26 17 16 23 40 48 42 29 19 20 35 55 69 74 70 60 51 49 53 58 62 61 55 50 48 47 48 49 46 39 31 28 33 37 36 30 24 26 32 33 34 35 37 37 35 32 27 22 14 8 9 19 20 15 8 7 13 19 25 29 30 28 23 21 20 21 22 24 26 28 30 32 31 28 26 26 25 25 26 28 27 20 11 5 4 7 14 22 28 30 29 26 24 21 20 20 21 24 26 28 29 30 32 34 36 39 42 44 45 46 48 51 55 60 64 66 67 68 69 70 72 74 75 76 75 74 74 76 78 79 80 85 83 82 82 80 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 12 15 17 17 16 14 13 13 14 14 14 14 14 14 15 17 18 22 28 19 18 18 18 20 25 33 35 30 24 19 20 19 19 19 26 37 39 26 18 15 21 38 47 42 26 16 17 31 54 68 74 69 59 50 49 53 57 60 59 54 51 50 49 50 49 46 41 34 28 27 34 30 24 14 11 18 28 30 31 31 32 30 27 24 20 20 21 21 22 16 12 5 0 1 14 22 26 26 24 23 23 23 24 23 22 22 24 27 31 33 33 32 30 28 26 26 27 28 27 20 12 6 4 6 12 19 26 29 30 28 27 26 24 23 23 24 26 28 29 28 28 30 32 33 35 36 36 38 40 44 49 54 57 59 60 62 64 66 69 72 75 76 76 73 71 70 72 76 81 83 81 81 81 80 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 11 14 15 11 8 6 5 5 12 14 13 10 4 12 14 15 16 17 17 17 18 19 20 24 34 36 36 34 30 24 20 19 19 20 22 26 25 18 15 17 26 45 41 21 11 13 26 52 68 73 68 57 48 46 51 55 56 55 52 49 49 50 50 49 46 42 37 33 32 33 34 21 11 6 8 16 23 22 21 21 21 20 17 14 12 12 12 13 14 4 0 0 2 8 19 22 20 17 16 20 23 25 26 25 23 24 25 28 32 34 35 35 33 30 27 27 28 29 26 20 12 6 3 4 9 15 22 26 27 28 29 30 29 27 25 25 26 27 28 30 30 30 30 30 31 30 31 32 35 38 41 44 48 52 55 58 61 64 68 72 74 75 74 71 68 66 66 67 69 73 75 76 75 74 73 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 9 9 3 0 0 0 0 5 6 5 3 0 3 4 3 7 14 15 16 17 24 31 33 36 36 35 34 33 32 25 21 20 20 20 20 18 16 17 25 34 26 16 5 7 23 49 67 72 64 50 40 41 47 51 52 50 47 45 46 47 47 46 44 42 40 37 36 36 35 32 19 8 8 15 18 17 10 8 10 14 14 13 6 2 2 1 1 0 0 0 1 6 20 21 15 9 6 7 18 23 25 25 25 25 27 28 30 32 34 36 37 36 33 30 29 31 32 30 24 16 6 2 2 6 11 17 20 22 26 30 32 32 30 27 26 25 25 27 30 31 32 33 33 32 30 30 30 31 32 34 38 42 46 50 55 60 64 67 69 71 71 69 66 64 64 63 63 63 63 61 60 60 61 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 1 5 12 14 16 24 32 34 36 34 33 32 32 34 34 24 20 19 18 18 17 18 23 28 22 7 4 6 22 45 62 67 56 41 26 23 39 46 46 43 40 39 40 42 41 40 38 38 39 39 39 38 37 36 32 22 19 20 21 20 15 4 0 3 8 13 12 4 0 0 0 0 0 0 0 4 16 18 14 5 0 1 7 16 20 21 22 24 26 28 30 31 32 34 36 38 38 36 34 32 34 36 36 31 22 8 2 0 2 4 8 12 15 20 26 31 33 31 28 26 24 24 25 28 30 33 35 36 36 34 33 32 31 30 32 35 39 42 46 51 55 59 62 64 64 64 62 60 59 58 57 57 55 54 53 52 53 55 57 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 1 4 12 16 23 31 32 31 22 19 18 21 30 31 23 18 17 17 18 18 19 22 20 7 0 5 21 42 56 58 46 25 14 13 20 39 41 36 32 30 32 33 32 29 27 28 33 36 38 38 36 35 34 33 31 31 31 28 20 13 4 0 0 2 12 12 8 3 0 0 0 0 0 0 0 1 0 0 1 3 7 16 16 15 15 17 21 24 26 28 30 32 34 36 38 39 40 39 37 38 41 42 38 27 10 2 0 0 1 1 4 7 13 20 27 31 30 27 24 23 23 24 25 27 29 32 34 36 35 34 33 33 34 35 37 39 41 42 44 47 50 53 54 55 56 54 53 51 49 48 47 45 44 43 44 46 49 50 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 10 14 18 21 21 19 16 15 16 16 17 16 15 15 16 17 18 18 15 11 6 0 4 20 39 50 48 31 15 6 6 12 21 35 24 18 17 17 18 18 15 14 14 19 27 32 34 32 29 26 30 32 34 35 33 29 20 14 6 2 2 3 8 11 9 4 0 0 0 0 0 0 0 0 0 0 8 19 21 19 15 12 12 14 16 20 22 24 27 30 34 36 39 41 42 42 40 41 44 46 43 32 13 3 0 0 0 0 1 3 7 13 21 26 27 25 23 22 23 23 24 24 24 26 27 29 31 32 33 35 38 40 40 40 39 38 37 38 41 43 44 46 47 46 44 42 40 38 37 36 36 36 37 40 41 42 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 5 7 10 14 14 14 8 5 4 4 3 3 9 14 16 16 15 13 5 0 0 3 16 36 42 36 23 8 1 0 6 16 20 21 17 15 14 12 11 10 10 10 12 15 18 24 23 19 15 16 22 28 32 34 32 30 25 20 17 15 13 10 2 8 5 0 0 0 0 0 0 0 0 0 0 0 7 18 19 18 15 13 12 12 13 15 17 20 23 26 30 35 39 42 44 44 43 43 46 48 46 35 16 4 0 0 0 0 0 2 4 8 14 21 24 23 22 21 23 23 23 22 21 21 22 23 25 28 32 37 41 43 42 40 36 33 32 32 34 36 38 40 40 39 37 35 33 31 30 30 30 31 31 32 33 35 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 13 9 3 0 0 0 0 0 2 7 11 2 2 1 0 0 2 11 30 35 25 10 0 0 0 5 12 18 17 15 13 12 8 2 2 1 6 10 12 12 12 10 9 4 2 8 14 20 24 26 29 30 30 30 29 24 16 11 2 7 6 1 0 0 0 0 0 0 0 0 0 0 2 4 3 14 16 16 15 13 13 13 14 16 19 22 26 31 37 41 44 45 46 47 48 49 46 36 17 5 0 0 0 0 1 3 4 5 8 15 19 20 20 19 21 22 23 22 21 21 20 21 23 26 31 36 39 40 39 36 33 30 29 30 32 35 36 37 36 35 33 31 29 28 27 26 26 26 25 25 26 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 1 1 0 0 0 0 0 0 1 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 1 8 2 0 0 0 0 0 0 0 2 3 0 0 0 0 2 10 15 16 6 0 0 0 2 4 12 17 16 13 8 6 4 2 0 0 0 6 10 7 1 0 0 0 0 0 0 7 9 12 18 23 30 34 36 34 28 17 13 11 11 11 8 0 0 0 0 0 0 0 0 0 0 0 0 0 3 11 16 16 16 15 14 14 14 16 19 24 28 34 40 45 47 49 51 52 51 46 35 17 5 0 0 0 0 2 4 4 3 4 9 14 17 16 16 17 20 23 24 23 23 22 22 24 27 30 33 35 35 34 32 31 30 30 31 34 36 36 36 34 33 31 30 29 28 26 25 23 21 19 17 17 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 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 1 2 2 2 1 0 0 1 10 14 14 12 9 7 1 0 0 0 0 0 0 2 3 2 0 0 0 0 0 0 0 0 0 4 10 17 28 34 36 33 28 21 17 16 16 14 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 8 16 17 17 17 16 16 16 18 22 27 32 39 46 49 51 52 52 50 44 34 18 5 0 0 0 0 2 4 4 2 2 5 9 12 12 11 13 17 21 24 25 24 24 25 26 28 30 31 31 30 30 30 30 31 32 33 34 35 35 33 31 29 28 27 26 25 23 21 18 14 12 10 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 13 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 3 11 23 29 30 29 27 25 25 24 20 15 12 8 2 0 0 0 0 0 0 0 0 0 0 0 0 0 4 14 17 18 18 18 18 18 19 22 26 32 38 47 51 52 50 47 44 40 32 18 5 0 0 0 0 1 2 2 1 1 3 5 8 8 8 10 14 18 21 23 24 25 27 29 30 30 29 28 28 28 28 28 28 29 29 29 29 28 25 23 20 19 17 16 14 11 9 7 5 4 3 3 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11 18 22 23 26 28 29 27 21 15 12 11 3 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 16 18 19 19 20 20 20 23 27 32 37 45 50 49 45 41 38 37 30 17 5 0 0 0 0 0 0 0 0 0 1 2 4 6 6 7 9 11 14 17 20 23 27 30 31 30 28 26 26 25 25 24 22 21 19 18 16 14 12 10 9 8 6 5 4 3 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 11 17 25 28 26 23 18 15 14 12 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 13 17 18 19 20 20 21 24 27 31 36 41 44 43 40 37 36 37 29 16 4 0 0 0 0 0 0 0 0 0 0 0 2 5 5 5 5 6 7 10 16 22 27 30 31 29 26 25 23 22 21 19 16 13 10 7 4 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 13 22 23 18 15 14 14 15 14 9 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 13 17 18 18 19 20 23 26 30 34 37 39 39 38 38 38 36 28 15 4 0 0 0 0 0 0 0 0 0 0 0 0 3 4 3 2 2 4 8 16 23 27 29 28 26 24 22 21 20 18 14 10 6 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 12 12 12 13 14 16 16 13 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 12 16 16 18 19 21 24 27 32 36 38 40 41 41 39 35 27 16 5 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 1 5 11 18 23 25 25 23 22 21 20 19 18 14 10 6 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 6 11 12 13 15 16 14 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 11 14 16 18 19 22 25 30 34 38 40 40 40 37 34 27 17 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 12 16 18 18 18 17 18 18 18 17 14 10 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 11 12 13 13 9 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 9 13 15 17 19 22 27 32 35 37 37 36 35 33 28 18 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 8 8 9 10 11 12 14 14 13 10 7 3 1 0 0 0 0 1 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 7 11 10 9 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 12 15 17 20 24 28 31 32 33 34 34 32 28 18 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 6 8 10 9 7 4 2 1 0 0 1 1 1 1 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 12 15 18 21 24 27 29 30 32 32 31 27 18 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 6 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 8 10 10 8 1 0 0 0 3 11 14 18 21 24 27 29 30 31 29 25 18 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 16 20 21 17 9 3 0 0 0 2 1 9 17 21 25 27 28 28 27 24 18 8 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 17 23 24 21 16 10 4 0 0 0 0 1 6 17 21 24 26 26 24 22 19 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 15 20 23 22 20 17 12 5 0 0 0 0 1 4 15 19 21 22 22 21 19 14 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 5 10 12 18 19 21 22 20 14 5 1 0 0 0 0 3 11 16 18 19 19 18 15 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 10 15 20 24 25 20 13 6 2 0 0 0 0 2 4 6 13 14 15 13 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 17 23 25 22 14 12 7 2 0 0 0 0 0 1 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 11 20 21 20 14 12 11 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 5 3 8 10 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 21 10 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 21 15 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 12 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 32 32 33 33 nan nan nan nan nan nan nan nan nan 31 32 32 32 32 nan nan nan 31 31 32 32 nan nan nan nan nan nan nan nan nan 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 31 30 30 30 30 30 30 30 30 30 30 29 29 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 29 29 29 29 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 22 22 22 22 21 21 21 21 21 21 21 21 21 21 21 21 21 21 22 22 22 22 22 22 22 22 23 23 23 23 22 22 22 22 22 21 21 20 19 18 17 17 17 18 17 17 17 17 18 19 20 20 20 20 20 20 19 19 19 19 19 18 18 18 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 32 32 32 33 nan nan nan nan nan nan nan 31 31 32 32 32 nan nan nan nan 31 31 32 nan nan nan nan nan nan nan nan 29 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 31 31 31 31 31 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 31 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 29 29 29 29 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 22 22 22 22 21 21 21 21 21 21 21 21 21 21 21 21 22 22 22 22 22 22 22 22 22 23 23 23 23 23 23 22 22 22 22 22 21 20 19 19 18 18 18 18 17 17 17 17 18 19 19 20 20 20 19 19 19 19 18 18 18 18 18 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 32 32 33 nan nan nan nan nan nan nan 31 31 32 nan nan nan nan nan 31 31 31 nan nan nan nan nan nan nan nan 29 29 30 31 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 31 30 31 31 31 31 31 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 nan nan nan 31 31 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 29 29 29 28 28 28 28 28 28 28 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 25 25 24 24 24 24 24 24 24 24 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 22 22 22 22 21 21 21 21 21 22 22 22 22 22 22 22 22 22 22 22 22 22 22 23 23 23 23 23 23 23 23 22 22 22 22 22 21 21 20 19 19 18 18 18 17 17 17 17 18 18 19 19 19 19 19 19 18 18 18 18 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 32 32 32 nan nan nan nan nan nan nan 31 32 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 28 29 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 30 30 31 31 31 31 31 31 30 30 30 30 30 30 30 29 29 29 30 30 30 30 30 30 nan nan nan nan nan nan 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 29 29 29 29 28 nan nan 29 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 25 25 24 24 24 24 24 24 24 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 21 21 20 19 19 18 18 18 17 17 17 17 18 18 18 18 18 18 18 18 18 18 18 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 31 31 32 32 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 28 29 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 30 30 31 31 31 31 31 31 30 30 30 30 30 30 29 29 29 29 30 30 30 30 30 nan nan nan nan nan nan nan 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 29 29 29 29 29 nan nan nan 29 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 27 26 26 26 26 26 27 27 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 23 23 23 23 23 23 23 23 23 23 23 23 22 23 23 23 23 23 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 21 20 19 19 18 18 17 17 17 17 17 17 17 17 18 18 18 18 18 18 18 18 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 31 32 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 30 31 31 31 31 31 31 31 30 30 30 30 30 29 29 29 29 30 30 30 30 30 nan nan nan nan nan nan 30 30 30 30 30 30 30 30 30 30 30 30 29 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 29 29 29 29 nan nan nan nan 29 29 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 26 26 26 26 27 27 27 27 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 23 23 23 24 24 24 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 21 20 19 18 18 17 17 16 16 16 16 16 16 16 17 17 17 18 18 18 17 17 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 31 31 32 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 31 31 31 31 31 30 30 30 30 30 30 30 30 29 30 30 30 30 30 nan nan nan nan nan nan 30 30 30 30 30 30 30 30 30 30 30 30 29 29 29 29 29 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 29 29 nan nan nan nan nan nan 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 23 24 24 24 24 24 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 22 22 22 22 22 22 22 22 22 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 21 20 19 18 17 17 16 16 15 15 15 15 15 16 16 17 17 17 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 31 31 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 31 31 31 31 30 30 30 30 30 30 30 30 30 30 30 30 30 30 nan nan nan nan nan nan nan 30 30 30 30 30 30 30 30 30 30 30 29 29 29 29 29 29 29 29 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 nan nan nan nan nan nan 29 29 30 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 nan nan nan 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 22 22 22 22 22 22 22 22 22 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 21 21 20 19 18 17 16 16 15 15 14 14 14 15 15 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 30 31 32 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 31 31 30 30 30 30 30 30 30 30 30 30 30 30 30 nan nan nan nan nan nan nan nan nan nan 30 30 30 30 30 30 30 30 29 29 29 29 29 29 29 29 29 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 nan nan nan nan nan 29 30 30 30 29 30 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 28 28 28 28 28 27 28 27 27 27 27 27 27 27 27 27 27 27 28 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 nan nan nan nan nan 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 22 22 22 23 23 23 23 23 23 23 23 23 23 23 23 23 23 24 23 23 23 23 23 23 23 22 22 22 21 20 20 19 18 17 16 16 15 15 14 14 14 14 15 15 15 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 31 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 30 30 30 30 30 30 30 30 30 30 30 30 30 nan nan nan nan nan nan nan nan nan nan nan nan 30 30 30 30 30 30 30 30 29 29 29 29 29 29 29 29 29 29 29 29 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 29 30 29 30 30 30 29 30 30 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 27 27 28 27 28 28 28 28 28 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 nan nan nan nan nan nan nan 23 23 23 23 23 23 23 23 nan nan nan nan nan nan 22 22 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 21 21 20 19 19 18 17 16 15 15 14 14 14 14 14 14 14 15 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 30 30 30 30 30 30 30 30 30 30 30 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 30 30 30 30 30 30 30 30 30 29 29 29 29 29 29 29 29 29 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 nan nan 30 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 nan nan nan nan nan nan nan 23 23 23 23 23 23 23 23 23 nan nan nan nan nan nan 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 21 21 20 19 19 18 17 16 15 15 14 14 13 13 13 14 14 15 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 30 30 30 30 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 30 30 30 30 30 30 30 30 30 30 30 30 29 29 29 29 29 29 29 30 29 30 30 30 30 30 30 30 30 30 30 30 30 30 30 nan nan nan 30 29 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 nan nan nan nan nan nan 23 23 23 23 23 23 23 23 23 23 nan nan nan nan nan nan 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 21 20 20 19 18 18 17 16 15 14 14 13 13 13 13 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 30 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 30 30 30 29 29 29 29 29 29 29 29 30 30 30 30 30 30 30 30 30 30 30 30 30 30 nan nan nan 30 30 30 30 30 29 29 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 25 25 nan nan nan nan nan nan 23 23 23 23 23 23 23 23 23 23 23 23 nan nan nan 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 21 20 20 19 18 17 16 16 15 14 14 13 13 13 13 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 31 31 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 29 29 29 29 29 29 29 29 29 30 30 30 30 30 30 30 30 30 30 30 30 30 30 nan nan 30 30 30 30 30 30 30 29 29 29 29 29 29 29 29 29 29 29 29 29 29 28 29 29 28 28 28 28 28 28 28 28 28 28 28 28 27 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 25 25 25 25 25 nan nan nan nan nan 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 21 20 20 19 18 17 16 15 15 14 14 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 31 31 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 29 29 29 29 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 29 29 28 28 28 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 nan nan 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 25 25 25 25 25 25 25 25 24 nan nan nan nan nan nan 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 21 21 20 19 18 17 16 15 15 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 29 29 29 29 29 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 29 29 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 nan nan nan nan 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 nan nan nan nan nan 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 21 20 19 18 17 16 16 15 15 15 14 14 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 29 29 29 29 29 29 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 29 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 nan nan nan 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 nan nan nan nan 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 21 21 20 18 17 16 16 15 15 15 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 29 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 31 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 nan nan 25 25 25 nan nan 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 nan nan nan 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 21 21 20 18 17 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 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 31 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 nan nan nan 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 nan nan nan 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 21 20 19 18 17 16 16 15 15 15 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 30 30 30 30 nan nan nan nan 30 30 30 30 nan 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 29 29 29 29 29 29 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 27 nan nan 27 27 27 27 27 26 26 26 26 26 26 26 26 26 nan nan nan nan nan 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 nan nan nan nan 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 21 20 19 18 17 16 16 15 15 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 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 nan nan 30 29 29 29 29 29 29 29 29 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 nan nan 27 27 27 27 nan nan 26 26 26 nan nan nan nan nan nan nan nan nan nan 25 25 25 nan nan nan 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 nan nan nan nan 24 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 21 21 20 19 18 17 16 15 15 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 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 nan nan nan 30 30 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 nan nan nan nan 26 26 nan nan nan nan nan nan nan nan nan 26 26 25 nan nan nan nan 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 nan nan nan nan nan nan 24 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 21 21 20 19 18 17 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 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 nan nan nan 30 30 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 nan nan nan nan 26 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 nan nan nan nan nan nan nan 24 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 21 21 21 20 19 18 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 nan nan nan 30 30 30 29 29 29 nan nan 29 29 29 29 29 29 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 27 27 nan nan nan nan nan 26 nan nan nan nan nan nan nan nan nan nan nan nan nan 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 nan nan nan nan nan nan nan nan 24 24 24 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 22 21 21 20 20 19 18 17 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 30 30 30 nan nan nan nan nan nan nan 30 30 30 30 30 nan nan nan nan 30 30 30 30 30 nan nan nan nan 29 29 29 29 29 28 28 28 28 nan 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 nan nan nan nan nan nan nan nan nan 24 24 24 24 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 22 22 21 21 21 20 20 19 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 30 nan nan nan nan nan nan nan nan nan 30 nan nan nan nan nan nan 30 30 30 30 nan nan nan nan nan 29 29 29 29 29 29 nan nan nan nan nan 28 28 28 28 28 nan nan nan nan 27 27 27 27 27 27 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 nan nan nan nan nan nan nan nan nan nan 24 24 24 24 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 22 22 22 22 22 21 21 21 20 19 18 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 nan nan nan nan nan nan 29 29 29 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 27 27 27 27 27 27 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 nan nan nan nan nan nan nan nan nan nan nan 24 24 24 24 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 22 22 22 22 21 21 21 21 20 20 19 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 29 29 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 27 27 27 27 27 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 nan nan nan nan nan nan nan nan nan nan nan nan 24 24 24 24 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 22 22 22 21 21 21 21 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 27 27 27 27 27 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 24 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 22 22 22 21 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 27 27 27 27 27 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 24 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 27 27 27 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 26 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 23 23 23 23 23 23 23 23 23 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 27 27 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 26 26 26 26 25 25 25 25 25 25 25 25 25 25 25 25 25 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 23 23 23 23 23 23 23 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 27 27 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 26 26 26 26 25 25 25 25 25 25 25 25 25 25 25 25 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 24 24 23 23 23 23 23 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 26 26 26 26 25 25 25 25 25 25 25 25 25 25 25 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 24 24 24 24 23 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 26 26 26 25 25 25 25 25 25 25 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 24 24 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 26 26 26 25 25 25 25 25 25 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 26 26 26 25 25 25 25 25 25 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 26 26 nan nan nan nan nan nan 26 26 26 26 26 25 25 25 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 26 26 26 26 nan nan nan nan nan nan nan nan 26 26 26 25 25 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 26 26 26 26 26 nan nan nan nan nan nan nan nan 26 26 26 25 25 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 26 26 26 26 26 26 26 nan nan nan nan nan nan nan 26 26 26 26 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 26 26 26 26 26 26 26 26 nan nan nan nan nan nan nan 26 26 26 26 26 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 26 26 26 26 26 26 nan nan nan nan nan nan nan nan nan 26 26 26 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 26 26 26 26 26 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 26 26 26 26 26 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 23 25 26 27 nan nan nan nan nan nan nan nan nan 19 20 22 23 23 nan nan nan 19 20 22 23 nan nan nan nan nan nan nan nan nan 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 21 20 20 20 19 19 19 18 17 17 16 16 16 16 17 17 17 17 17 16 16 17 17 18 18 18 18 18 18 18 18 18 18 17 17 16 16 16 16 16 15 16 16 16 16 16 16 16 15 15 15 15 15 14 13 12 12 11 11 10 10 11 11 12 12 13 13 14 14 14 15 15 16 16 15 15 15 15 15 14 14 13 12 12 12 12 12 11 11 11 11 11 11 10 10 10 9 9 9 9 9 10 10 11 12 13 13 14 14 14 13 14 13 13 13 13 13 13 12 12 12 12 13 14 15 15 15 15 15 15 14 13 13 13 12 12 11 11 10 9 9 9 9 8 8 8 7 7 6 5 3 3 2 2 3 4 5 5 4 3 1 0 359 359 359 358 358 358 357 357 356 356 355 355 355 355 355 355 355 355 355 355 356 356 357 357 357 358 358 359 0 1 3 3 3 4 3 3 3 2 1 359 355 350 345 342 340 339 340 341 340 339 338 339 342 348 352 355 356 355 353 351 349 348 347 346 345 344 344 343 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 24 26 27 nan nan nan nan nan nan nan 19 19 21 22 23 nan nan nan nan 19 20 22 nan nan nan nan nan nan nan nan 15 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 21 20 20 20 20 20 19 19 18 17 17 17 17 17 17 17 17 17 17 17 17 18 18 19 19 19 19 19 19 18 18 19 18 18 17 17 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 15 15 14 13 12 12 11 11 11 11 12 13 13 14 14 15 15 15 16 16 16 16 16 15 15 15 15 15 14 14 13 12 12 11 12 11 11 11 11 11 11 10 10 10 9 9 9 9 9 10 11 12 13 14 14 15 14 14 14 14 14 14 14 14 13 13 12 12 12 13 14 15 16 16 16 16 16 15 15 14 13 13 12 12 11 10 9 9 8 8 7 7 7 7 6 6 5 4 3 3 3 4 4 6 6 5 3 2 0 359 359 359 358 358 358 358 357 357 356 355 355 355 355 355 356 356 356 356 356 356 357 358 358 358 359 359 360 0 1 3 3 4 4 4 4 3 3 3 2 0 357 353 349 345 343 342 342 341 340 338 337 339 343 347 350 352 352 351 349 347 346 345 344 343 342 341 340 339 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 25 26 nan nan nan nan nan nan nan 19 20 22 nan nan nan nan nan 18 19 20 nan nan nan nan nan nan nan nan 13 15 17 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 20 20 19 20 20 21 21 20 19 18 18 18 18 18 17 17 17 16 16 16 16 17 18 19 19 19 19 19 18 nan nan nan 18 18 18 18 17 17 17 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 15 15 14 13 12 12 12 12 12 13 14 14 15 16 16 16 16 16 16 16 16 16 16 16 16 16 15 15 14 14 13 12 12 11 11 11 12 12 11 11 11 10 10 9 9 9 9 10 11 12 13 13 14 15 15 15 15 16 16 15 15 14 14 14 13 13 13 13 14 15 16 16 17 16 16 16 16 15 15 14 13 13 12 11 10 9 8 7 7 7 7 6 6 6 5 5 4 4 4 4 5 5 5 5 4 3 1 0 359 359 359 359 359 359 358 357 357 356 356 355 356 356 356 356 356 357 357 357 357 358 359 359 0 0 1 1 1 2 3 3 4 4 4 4 4 3 3 3 1 359 355 352 348 346 344 343 341 339 338 338 340 343 345 347 348 348 347 346 345 344 343 342 341 340 339 337 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 24 26 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 13 15 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 19 18 19 19 21 21 21 20 19 19 19 19 18 18 17 17 16 16 16 16 16 17 18 19 19 19 nan nan nan nan nan nan 18 18 18 17 17 17 16 16 16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 16 16 16 15 14 14 13 13 13 nan nan 14 14 15 16 17 17 17 17 16 16 16 16 16 16 16 16 16 16 15 15 14 14 13 12 12 12 12 12 12 12 12 11 11 10 10 10 10 11 11 11 12 13 14 15 15 16 16 17 16 16 16 15 15 14 14 13 13 14 14 15 16 17 17 17 17 17 16 16 16 15 14 14 13 12 11 10 9 8 7 6 6 6 5 6 5 5 5 5 5 4 4 5 5 5 4 3 2 1 360 359 359 359 359 360 359 359 358 358 357 357 357 357 357 357 357 358 358 358 358 358 359 0 1 2 2 2 3 3 3 3 4 4 4 4 4 4 4 4 3 1 359 357 353 350 347 344 342 340 339 339 339 339 340 342 344 345 345 345 344 344 343 342 341 340 338 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 19 21 24 26 nan nan 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 14 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 18 18 18 20 21 21 21 20 20 19 19 19 19 18 17 16 16 15 15 16 16 17 18 19 19 nan nan nan nan nan nan nan 17 17 17 17 17 17 16 16 16 15 15 15 15 15 16 16 16 16 16 17 17 17 17 17 17 16 16 15 15 14 14 14 14 nan nan nan 15 16 16 17 18 17 17 17 17 17 17 17 17 17 16 16 16 16 15 15 14 13 13 12 12 12 13 13 13 12 12 12 11 11 11 11 11 12 12 13 14 15 16 17 17 17 17 17 16 16 16 15 15 14 14 14 14 15 16 16 17 17 17 17 17 16 16 16 15 14 14 13 12 11 9 8 7 6 6 6 5 6 6 6 6 6 5 4 4 4 5 5 5 4 2 1 0 359 359 359 0 0 1 0 0 359 359 358 358 357 357 358 358 358 359 358 358 358 359 360 1 2 3 3 4 4 4 4 4 5 5 5 5 4 4 4 4 3 2 0 357 354 350 346 343 341 339 338 338 337 337 337 339 340 341 342 342 342 342 342 341 340 338 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 21 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 18 19 20 21 21 21 20 20 20 20 19 19 18 17 16 16 16 16 16 16 18 18 18 18 nan nan nan nan nan nan 16 16 17 17 17 16 16 16 15 15 15 14 14 14 15 15 15 15 16 16 16 16 17 17 17 17 16 16 16 16 16 16 15 15 15 nan nan nan nan 16 17 17 18 18 18 18 18 17 17 17 17 17 16 16 16 16 15 15 14 14 13 13 13 13 13 13 13 13 13 13 12 12 12 12 12 12 13 14 15 16 17 17 17 18 17 17 17 17 16 15 15 15 15 15 16 16 16 16 17 17 16 16 16 16 16 15 15 14 13 12 12 10 9 8 7 7 6 6 6 6 7 7 6 6 5 5 5 5 5 5 5 3 2 1 360 359 359 0 1 1 1 1 0 360 359 359 358 358 358 358 359 359 359 358 358 358 359 0 1 3 4 4 5 5 5 5 6 6 6 6 5 5 5 5 4 4 2 0 357 353 349 345 341 339 337 336 334 333 332 332 334 335 337 338 339 340 340 339 338 335 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 19 22 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 21 20 20 20 20 20 19 19 19 18 17 17 16 16 16 16 17 18 18 18 nan nan nan nan nan nan 16 16 16 16 16 16 15 15 15 15 14 14 14 14 14 14 14 14 14 15 15 16 16 16 16 16 16 17 17 17 17 17 16 16 15 nan nan nan nan nan nan 17 18 19 19 19 19 19 18 18 18 17 17 17 16 16 16 15 15 15 14 14 13 13 13 14 13 13 14 13 13 13 13 13 13 13 14 15 16 16 17 18 18 18 18 18 18 17 16 16 15 15 16 16 16 16 16 16 16 16 16 16 16 15 15 15 15 14 14 13 12 12 11 10 9 8 8 7 7 7 7 7 7 6 6 5 5 5 6 6 5 4 2 1 360 359 359 360 0 1 1 1 1 0 360 359 359 358 358 359 359 359 359 359 358 358 358 359 0 2 3 4 5 6 6 6 7 7 7 7 7 7 6 6 6 5 4 2 0 357 353 348 343 339 336 334 331 330 328 327 328 329 331 333 335 336 336 336 335 333 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 19 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 20 20 20 20 19 19 19 19 18 18 18 17 17 16 16 17 17 17 17 nan nan nan nan nan nan nan 16 16 16 16 15 15 15 15 14 14 14 14 14 14 13 14 14 14 14 14 15 15 16 16 16 16 17 17 17 17 17 17 16 16 16 nan nan nan nan nan nan 18 19 19 19 19 19 19 19 19 18 17 17 17 16 16 16 16 15 15 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 15 15 16 17 17 18 18 19 19 19 18 17 16 16 15 15 15 15 15 16 16 16 16 16 16 16 16 15 15 15 15 15 14 14 13 13 12 12 11 11 10 9 8 7 7 7 7 7 6 6 6 6 6 7 6 nan nan nan 1 359 359 359 360 0 1 1 1 0 0 360 359 359 359 359 359 359 359 359 359 359 359 359 0 1 3 4 5 6 6 7 7 8 8 9 9 8 8 7 7 6 5 4 1 359 355 351 347 342 338 334 331 329 327 326 325 325 326 328 330 331 333 333 333 331 329 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 20 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 19 19 19 19 19 19 19 18 18 17 16 16 16 17 17 17 nan nan nan nan nan nan nan nan nan nan 16 15 15 15 15 14 14 14 14 14 13 13 13 13 14 14 14 14 15 15 15 16 16 16 17 17 17 17 17 17 16 16 16 nan nan nan nan nan 18 19 19 20 20 20 20 20 19 19 18 18 17 17 16 16 16 16 15 15 15 14 14 14 14 14 14 14 14 15 15 15 16 16 16 16 17 18 18 19 19 19 19 18 18 17 16 16 15 15 15 15 15 15 16 16 16 16 16 15 15 15 15 15 15 14 14 14 14 13 13 13 13 12 11 10 9 8 7 7 7 7 6 6 6 6 7 7 nan nan nan nan nan 1 0 360 359 360 0 1 1 1 1 0 0 360 359 359 359 359 359 359 0 0 1 0 1 1 2 3 4 5 6 6 7 7 8 9 9 9 9 8 7 7 6 4 2 359 357 353 349 345 341 337 333 330 328 326 324 323 323 324 326 327 329 330 330 330 329 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 19 19 19 19 18 17 17 16 16 17 17 nan nan nan nan nan nan nan nan nan nan nan nan 15 15 15 15 14 14 14 14 14 14 14 14 14 14 14 14 14 14 15 15 15 16 16 16 17 17 17 16 17 17 17 17 17 17 17 17 18 18 19 19 19 20 20 20 20 20 19 19 19 18 17 17 17 16 16 16 15 15 15 14 14 15 15 15 15 15 15 16 17 17 17 17 17 18 19 19 20 20 19 19 18 17 16 16 16 15 14 14 14 14 15 15 15 15 15 15 15 15 15 15 14 14 14 14 14 14 14 14 13 13 13 12 11 10 9 9 8 7 7 6 6 6 7 7 8 nan nan nan nan nan nan nan 1 0 360 0 1 1 2 2 nan nan nan nan nan nan 359 360 0 1 2 2 2 2 2 2 3 3 4 5 5 6 6 7 8 8 9 9 8 8 7 6 4 3 0 358 355 351 348 344 341 337 333 330 327 325 323 322 321 321 322 324 326 329 330 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 18 18 19 19 19 18 18 17 17 17 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 15 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 15 15 15 16 16 16 16 16 17 17 17 17 17 17 17 18 18 18 19 nan nan 19 20 20 20 20 19 19 19 19 18 18 17 17 17 16 16 15 16 15 15 15 15 16 16 16 17 17 17 18 18 18 19 20 20 20 20 20 19 18 17 17 16 16 15 15 14 14 14 14 14 14 14 14 15 15 15 15 15 15 15 14 14 13 13 13 13 13 13 12 12 11 11 11 10 10 9 8 7 7 7 7 7 7 8 8 8 nan nan nan nan nan nan nan 1 1 1 2 2 3 2 2 2 nan nan nan nan nan nan 1 2 3 3 3 3 3 3 3 3 4 4 5 5 6 6 7 8 8 8 8 7 6 5 3 1 359 356 353 350 347 344 340 336 332 328 326 323 321 319 318 318 320 323 326 329 329 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 18 18 19 19 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 15 15 15 15 15 15 14 14 14 14 14 14 14 14 14 15 15 15 16 16 16 17 17 17 17 17 17 18 18 18 18 19 nan nan nan 19 20 20 20 20 20 19 19 19 19 18 18 17 17 17 17 17 17 17 17 16 16 17 17 18 18 18 18 18 19 20 21 21 21 20 19 18 17 17 17 17 16 16 15 14 15 15 15 14 14 14 14 14 14 15 15 15 15 15 14 13 13 12 12 11 11 11 11 11 11 11 12 12 11 10 9 8 8 8 8 8 7 8 8 9 9 9 nan nan nan nan nan nan 2 2 2 2 2 2 2 2 1 1 nan nan nan nan nan nan 3 3 4 4 4 4 4 4 4 4 4 5 5 5 6 7 8 8 8 7 6 5 4 2 0 358 355 352 349 346 343 338 334 331 327 324 321 318 316 315 316 320 323 326 328 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 15 15 14 14 14 14 14 14 14 14 14 15 15 16 16 17 17 17 17 17 17 18 18 18 19 19 19 nan nan nan 20 20 20 20 20 20 20 20 20 19 19 19 19 18 18 19 19 18 18 17 17 17 18 19 19 19 18 18 19 20 21 22 21 20 20 19 18 18 18 18 18 17 16 16 15 15 16 15 15 14 14 14 14 14 14 15 15 15 15 14 13 13 12 11 11 10 9 10 10 11 12 12 12 12 11 10 9 9 9 9 8 7 7 8 8 9 9 9 nan nan nan nan nan nan 3 2 2 2 2 2 2 2 1 1 1 1 nan nan nan 3 3 4 4 5 5 5 6 5 5 5 5 5 6 6 7 8 8 8 7 6 5 4 4 2 360 357 355 352 349 345 341 337 333 329 326 323 320 317 315 315 317 320 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 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 14 14 14 13 13 13 14 14 15 15 16 17 17 18 18 18 18 18 18 18 19 19 19 20 nan nan 20 21 21 21 21 21 21 20 20 20 20 20 20 20 20 20 20 20 19 19 18 18 18 19 19 19 19 18 19 20 21 22 22 21 19 19 18 18 19 19 19 18 18 17 17 17 17 17 16 15 15 15 15 15 15 14 14 15 14 14 14 14 13 12 11 10 10 9 10 10 11 11 12 12 11 11 11 10 10 10 9 8 7 7 8 8 9 9 10 10 9 nan nan nan nan nan 3 2 2 2 2 2 1 1 1 1 1 1 1 2 2 3 4 4 5 6 6 6 6 6 6 6 6 6 7 8 8 8 8 8 7 7 6 5 4 2 0 358 355 352 348 344 341 336 332 328 325 322 320 318 317 317 318 319 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 18 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 13 13 14 14 15 16 16 17 17 18 18 18 18 18 19 19 19 20 20 20 20 21 21 21 21 21 21 21 21 21 21 20 21 21 21 21 21 22 21 21 20 19 19 19 20 20 20 19 19 19 20 21 22 22 21 20 19 18 19 19 20 20 19 18 18 17 17 18 17 17 17 16 16 16 16 15 15 15 14 14 14 14 14 14 13 13 12 nan nan 10 10 10 10 11 11 11 11 11 11 11 11 10 9 9 8 8 8 8 9 9 10 10 10 9 9 8 nan nan nan nan nan nan 2 2 1 1 1 1 1 1 1 1 2 3 3 4 5 5 6 6 6 7 7 7 7 8 8 8 8 8 8 8 8 8 7 6 5 4 3 1 359 356 353 349 345 341 336 332 328 325 323 322 320 319 318 317 316 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 15 15 16 17 17 18 18 18 18 19 19 19 20 20 20 21 21 21 21 22 22 22 22 22 22 21 21 21 21 21 21 22 22 22 22 22 22 21 20 20 20 20 20 20 19 20 21 22 22 22 21 20 19 18 18 19 19 20 19 19 18 18 18 18 18 18 17 17 17 17 16 16 16 15 14 14 14 14 14 14 14 14 13 13 nan nan nan nan 10 10 10 10 10 10 11 11 11 11 10 10 9 9 9 9 9 9 9 10 10 10 10 9 9 7 6 5 4 nan nan nan nan nan 1 1 2 2 2 1 1 1 2 2 3 4 4 5 6 6 6 7 7 7 8 8 8 8 8 8 8 8 8 8 7 7 6 5 4 2 0 358 355 351 347 342 337 332 329 327 325 323 321 319 317 315 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 15 15 16 16 17 17 18 18 18 19 19 20 20 20 20 20 21 21 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 23 23 23 22 22 22 22 22 21 20 20 20 21 22 23 23 21 20 19 18 18 19 19 19 19 18 17 17 17 18 18 17 17 17 17 17 17 16 16 15 15 14 14 14 14 14 14 14 14 13 13 12 nan nan nan 11 10 10 10 10 10 11 11 11 10 10 10 10 10 10 9 9 9 9 9 10 10 10 10 9 8 7 6 5 4 3 nan nan nan nan 2 2 2 2 2 1 1 2 2 3 3 3 4 5 5 6 6 6 6 6 7 7 7 8 8 8 8 8 7 7 7 6 6 5 4 3 1 359 357 353 348 342 337 333 329 327 325 323 321 319 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 16 16 17 17 18 18 19 19 20 20 20 20 20 21 21 21 22 22 22 22 23 23 23 22 22 22 22 22 22 22 22 23 23 23 23 23 23 23 23 22 21 21 21 22 23 24 23 22 20 19 19 19 19 19 18 17 16 16 17 17 17 17 17 17 17 17 17 17 17 16 16 15 15 15 15 14 14 14 14 13 13 13 13 13 12 nan nan 11 11 10 nan nan 10 10 10 10 10 10 10 10 10 10 10 9 9 9 9 9 10 10 10 10 9 7 6 5 4 3 3 nan nan nan 2 2 2 2 2 1 1 1 2 2 2 3 3 4 4 4 5 5 5 5 5 6 6 6 7 7 7 7 7 7 6 6 6 5 4 4 3 1 359 356 352 347 342 337 332 329 327 325 323 321 318 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 16 16 17 17 18 19 19 19 20 20 20 20 20 21 21 21 22 22 22 23 23 23 23 23 22 22 22 22 22 23 23 23 23 23 23 23 23 23 23 22 21 21 22 24 24 24 22 21 19 19 19 20 19 19 17 16 16 16 17 17 17 16 16 16 17 17 17 17 16 16 16 15 15 15 15 14 14 14 14 13 13 13 13 12 12 12 12 12 11 nan nan nan 10 10 10 10 10 10 10 11 11 10 10 10 10 9 9 9 9 10 10 10 9 8 7 6 5 4 3 nan nan nan 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 4 4 4 4 4 4 4 5 5 5 6 6 6 6 6 6 6 6 5 4 4 3 2 0 358 355 351 346 341 336 332 328 325 324 321 319 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 16 17 nan nan nan nan 19 19 19 19 nan 20 20 20 21 21 21 22 22 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 22 22 23 24 25 25 23 21 20 20 20 20 20 19 18 17 16 16 17 16 16 16 16 16 16 16 17 16 16 16 16 16 nan nan 15 15 14 14 14 13 13 13 13 13 13 12 12 12 nan nan nan nan nan 11 10 10 10 10 10 10 10 10 10 10 10 10 9 9 9 9 9 9 9 9 9 8 7 6 5 4 nan nan nan nan 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 4 4 4 5 5 5 6 6 6 5 5 4 3 3 2 1 359 357 354 350 345 340 335 330 327 324 321 319 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 21 22 22 22 23 23 23 23 23 23 23 23 23 23 23 23 23 23 24 24 23 23 23 23 23 nan nan 25 23 21 20 20 20 21 21 20 19 18 17 17 17 17 16 16 16 16 16 16 16 16 16 15 16 16 nan nan 15 15 14 14 nan nan 13 13 13 nan nan nan nan nan nan nan nan nan nan 12 11 11 nan nan nan 11 10 10 11 11 11 11 10 10 10 9 9 9 9 9 9 9 9 7 6 5 4 nan nan nan nan 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 5 5 5 5 5 5 4 4 3 2 2 1 360 358 356 353 349 344 339 334 329 325 322 319 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 21 22 22 22 23 23 23 23 23 24 24 24 24 24 24 24 24 24 24 23 23 23 nan nan nan 24 23 21 20 20 21 21 22 21 20 19 18 18 18 17 16 16 16 16 16 16 16 15 15 15 15 15 15 15 15 15 14 13 nan nan nan nan 13 13 nan nan nan nan nan nan nan nan nan 12 12 12 nan nan nan nan 11 11 11 11 11 11 11 10 10 10 10 9 9 9 9 9 9 9 8 7 6 4 nan nan nan nan nan nan 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 4 4 5 5 5 5 4 4 4 3 2 1 1 360 358 357 355 352 347 343 338 332 327 323 321 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 21 22 22 23 23 23 24 24 24 24 24 24 24 24 24 24 24 23 23 23 nan nan nan 24 23 21 20 20 21 22 22 22 20 19 19 19 18 18 17 16 16 16 16 16 15 15 15 14 14 14 15 15 15 14 14 14 13 nan nan nan nan 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 11 11 11 11 11 11 11 11 11 10 10 10 9 9 9 9 9 9 8 7 6 5 4 nan nan nan nan nan nan nan 4 5 5 5 4 4 4 4 4 3 3 3 3 3 2 2 2 2 3 3 3 4 4 4 5 4 4 4 4 3 3 3 1 1 360 358 357 356 353 350 346 341 337 332 327 323 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 22 22 23 23 23 24 24 24 24 24 24 24 24 24 24 24 24 24 nan nan nan 24 22 21 21 21 22 nan nan 22 21 20 19 19 19 18 18 17 17 17 16 16 16 15 15 14 14 14 14 14 14 14 14 14 14 14 nan nan nan nan nan 12 nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 12 12 12 12 11 11 11 11 11 11 11 10 10 10 9 9 9 9 9 8 8 7 6 4 nan nan nan nan nan nan nan nan 5 5 5 5 5 5 5 4 4 4 4 4 3 3 3 2 3 3 3 3 4 4 4 4 4 4 4 3 3 3 2 2 1 360 359 358 356 354 352 349 345 340 336 331 327 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 23 23 nan nan nan nan nan nan nan 24 24 24 24 24 nan nan nan nan 23 22 21 21 21 nan nan nan nan 21 20 19 19 19 18 18 18 18 nan 18 17 16 15 15 15 15 14 14 14 14 14 14 14 14 14 14 13 13 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 12 12 12 12 12 12 11 11 11 11 11 10 10 10 10 9 9 9 9 8 8 7 6 5 nan nan nan nan nan nan nan nan nan 5 5 5 5 5 5 5 5 5 4 4 4 3 3 3 3 3 3 3 3 4 4 4 3 3 3 3 3 2 2 1 0 360 359 358 357 355 353 350 347 343 339 335 331 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan 24 nan nan nan nan nan nan 23 22 21 21 nan nan nan nan nan 21 20 19 19 19 19 nan nan nan nan nan 18 17 16 16 15 nan nan nan nan 14 14 14 14 14 14 14 14 13 13 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 12 12 12 12 12 11 11 11 11 10 10 10 10 10 10 9 9 9 8 8 6 5 nan nan nan nan nan nan nan nan nan nan 5 5 5 5 5 5 5 5 5 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 1 1 0 359 359 358 358 356 355 354 351 349 346 342 338 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan 20 19 19 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 14 13 14 13 13 13 13 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 12 12 12 12 12 11 11 11 10 10 10 10 10 10 10 10 9 9 8 7 5 nan nan nan nan nan nan nan nan nan nan nan 5 5 5 5 5 5 5 5 4 4 4 4 3 3 3 3 3 3 3 3 3 3 2 2 1 1 0 359 359 358 357 357 356 355 354 353 351 350 347 344 341 337 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 19 19 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 13 13 12 12 12 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 12 12 12 11 11 11 10 10 9 9 9 10 10 10 10 9 9 8 6 nan nan nan nan nan nan nan nan nan nan nan nan 5 5 5 5 5 5 4 4 4 4 3 3 3 3 3 3 3 3 3 3 2 2 1 1 0 359 359 358 357 356 356 355 354 353 352 351 350 348 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan 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 12 12 12 11 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 13 12 12 12 11 11 11 10 10 9 9 9 9 10 10 10 10 9 8 7 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 4 4 4 4 3 3 3 3 3 3 3 3 3 2 2 2 1 1 0 360 359 358 357 356 355 354 353 352 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 11 11 11 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 12 12 12 12 11 11 11 10 9 9 9 9 10 10 10 10 10 9 7 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 4 4 4 3 3 3 3 3 3 3 3 3 2 2 2 2 1 1 1 0 359 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 11 11 11 11 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 12 12 12 12 11 11 10 10 9 9 9 10 10 10 10 10 9 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 4 4 4 3 3 3 3 3 3 3 3 3 3 2 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 11 11 11 11 11 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 13 12 12 12 11 11 10 10 10 10 10 10 10 10 10 9 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 4 4 4 3 3 3 3 3 3 3 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 12 12 12 11 11 11 11 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 13 13 12 12 12 11 11 11 10 10 10 10 10 10 10 9 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 5 5 4 4 4 3 3 3 3 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 11 11 11 11 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 13 13 12 12 12 11 11 11 10 10 10 10 10 10 9 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 5 5 5 4 4 3 3 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 11 10 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 12 12 12 11 11 11 10 10 10 10 10 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 5 5 4 4 3 2 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 13 13 12 12 11 11 11 11 10 10 10 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 14 13 13 12 12 11 11 11 11 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 13 14 nan nan nan nan nan nan 15 14 13 12 12 12 11 11 11 10 10 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 11 12 13 14 nan nan nan nan nan nan nan nan 14 13 12 12 12 11 11 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 10 11 12 13 14 nan nan nan nan nan nan nan nan 14 13 13 12 12 11 11 10 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 10 10 11 12 13 15 17 nan nan nan nan nan nan nan 16 14 14 13 12 12 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 10 10 11 12 12 14 15 17 nan nan nan nan nan nan nan 17 16 15 14 13 12 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 12 12 13 13 15 17 nan nan nan nan nan nan nan nan nan 16 14 14 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 12 12 12 13 14 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 nan 12 12 12 12 12 14 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 9 8 5 1 -3 -6 -5 -3 -0 0 -4 -12 -12 -6 3 7 4 -0 -4 -6 -6 -6 -6 -8 -10 -11 -12 -13 -15 -17 -17 -15 -12 -11 -14 -21 -24 -21 -14 -4 1 -3 -8 -9 -7 -4 -2 -0 0 0 -1 -1 -1 1 5 9 13 16 17 16 14 10 7 5 3 2 0 -2 -4 -6 -7 -8 -7 -5 -3 -1 -1 -1 -1 -0 1 1 -1 -3 -6 -8 -10 -10 -9 -6 -4 -4 -5 -6 -7 -6 -4 -4 -6 -9 -11 -13 -14 -12 -9 -4 -1 -0 -0 0 0 -1 -3 -7 -11 -13 -15 -15 -12 -8 -4 -1 -2 -6 -10 -12 -10 -5 -1 -1 -4 -7 -7 -6 -5 -6 -8 -10 -10 -7 -5 -4 -6 -7 -7 -5 -4 -5 -8 -9 -7 -4 -2 -3 -7 -9 -8 -5 -3 -4 -7 -10 -11 -12 -13 -14 -14 -14 -14 -14 -13 -14 -15 -16 -16 -15 -14 -13 -14 -16 -17 -19 -19 -19 -18 -17 -16 -15 -14 -14 -14 -14 -14 -14 -14 -14 -15 -16 -17 -17 -17 -16 -14 -11 -8 -6 -7 -9 -11 -11 -11 -10 -9 -10 -10 -10 -9 -9 -8 -8 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -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 -10 -10 -10 -10 -10 -10 -11 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -9 -9 -9 -10 -10 -11 -12 -12 -13 -13 -14 -14 -15 -15 -16 -17 -17 -16 -15 -15 -14 -14 -13 -12 -11 -11 -11 -11 -11 -11 -9 -8 -6 -4 -4 -5 -6 -6 -6 -6 -5 -5 -4 -4 -3 -3 -4 -5 -6 -6 -7 -6 -5 -4 -2 -1 -0 0 -0 -1 -1 -1 -1 -1 -2 -3 -3 -4 -3 -3 -3 -3 -3 -3 -2 -1 -0 1 1 1 1 1 0 -1 -1 -2 -2 -2 -3 -3 -3 -3 -2 -2 -2 -3 -3 -4 -4 -5 -5 -5 -5 -5 -4 -4 -4 -3 -2 -1 1 4 6 7 8 8 8 7 7 6 5 5 4 4 4 4 4 4 4 3 3 3 2 2 2 3 3 3 8 4 0 -2 -2 -1 -1 1 5 8 8 -1 -8 -8 -3 3 4 2 0 -2 -5 -8 -10 -11 -12 -12 -12 -13 -15 -18 -19 -17 -13 -10 -11 -18 -23 -24 -19 -10 -2 -3 -7 -9 -7 -4 -1 1 1 -0 -1 -1 -0 1 4 7 10 13 15 15 14 11 8 6 5 3 1 -2 -4 -6 -8 -9 -8 -7 -5 -4 -3 -3 -4 -3 -2 -1 -1 -1 -3 -5 -8 -10 -10 -7 -4 -4 -5 -8 -8 -6 -4 -3 -4 -7 -9 -11 -12 -12 -10 -7 -5 -5 -4 -2 -0 1 -0 -4 -8 -12 -14 -15 -13 -9 -4 -1 -1 -4 -9 -12 -12 -9 -5 -1 -1 -2 -3 -5 -6 -9 -12 -13 -11 -7 -4 -3 -5 -6 -5 -3 -4 -6 -8 -8 -4 -1 -1 -5 -10 -12 -9 -6 -3 -4 -8 -10 -12 -12 -13 -14 -14 -15 -14 -14 -14 -14 -14 -14 -15 -15 -14 -13 -14 -16 -18 -20 -20 -19 -17 -16 -15 -13 -13 -14 -15 -15 -14 -14 -14 -15 -16 -17 -17 -17 -16 -15 -12 -9 -7 -7 -9 -11 -12 -12 -11 -10 -10 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -10 -10 -10 -10 -10 -10 -10 -10 -10 -9 -9 -10 -10 -10 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -10 -10 -10 -9 -9 -9 -9 -10 -10 -10 -10 -10 -11 -11 -11 -10 -10 -9 -9 -9 -9 -10 -11 -11 -12 -12 -13 -13 -14 -14 -15 -16 -16 -17 -17 -16 -16 -16 -15 -15 -14 -14 -13 -12 -12 -12 -12 -11 -10 -8 -7 -6 -7 -7 -7 -7 -7 -6 -5 -5 -4 -4 -4 -4 -5 -5 -6 -6 -6 -6 -5 -5 -4 -4 -3 -3 -3 -2 -2 -2 -2 -3 -3 -4 -4 -3 -2 -2 -2 -2 -3 -3 -2 -2 -1 -0 0 1 1 0 -0 -1 -2 -2 -2 -2 -3 -3 -3 -2 -2 -2 -2 -3 -3 -3 -4 -4 -5 -5 -5 -4 -4 -4 -4 -4 -4 -3 -3 -1 1 3 4 5 5 4 4 4 5 5 4 4 4 4 4 3 3 3 2 2 2 3 3 3 4 4 -2 -5 -8 -9 -9 -6 -4 -1 2 7 9 4 -4 -7 -6 -1 2 1 0 -2 -5 -9 -13 -14 -14 -14 -14 -14 -15 -18 -20 -19 -16 -12 -10 -14 -20 -24 -23 -16 -8 -5 -7 -8 -7 -4 0 2 1 -0 -1 -0 2 3 5 6 8 10 12 14 13 12 9 7 6 4 1 -2 -4 -7 -9 -9 -10 -9 -9 -7 -6 -6 -6 -5 -5 -4 -3 -2 -2 -3 -5 -8 -10 -9 -6 -4 -5 -7 -9 -7 -5 -3 -4 -6 -8 -9 -9 -8 -7 -7 -8 -10 -10 -7 -3 1 2 -0 -5 -10 -14 -14 -12 -9 -4 -1 -0 -3 -8 -12 -13 -12 -8 -2 1 1 -1 -5 -9 -12 -14 -14 -12 -9 -6 -4 -3 -3 -2 -3 -5 -8 -9 -6 -3 -1 -3 -8 -12 -13 -10 -6 -4 -5 -9 -11 -12 -12 -13 -14 -14 -15 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -15 -16 -18 -19 -19 -18 -16 -15 -14 -13 -13 -14 -15 -15 -15 -15 -15 -16 -17 -17 -17 -16 -15 -13 -11 -8 -8 -9 -11 -12 -12 -12 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -9 -9 -9 -9 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -9 -9 -9 -9 -10 -11 -11 -11 -12 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -9 -10 -10 -10 -10 -10 -10 -9 -9 -9 -10 -11 -11 -12 -12 -13 -13 -14 -14 -15 -15 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -15 -14 -14 -14 -14 -13 -12 -11 -10 -9 -9 -9 -9 -9 -9 -8 -8 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -4 -3 -3 -3 -4 -4 -4 -4 -3 -3 -2 -2 -2 -2 -3 -3 -2 -2 -2 -1 -1 -1 -0 -1 -1 -1 -2 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -3 -3 -3 -3 -4 -4 -3 -3 -3 -4 -4 -4 -4 -3 -3 -2 -1 -0 1 1 2 2 3 3 4 4 4 4 3 3 3 2 2 2 2 3 3 3 4 4 4 -14 -11 -10 -11 -13 -12 -11 -9 -7 -4 -1 -2 -5 -6 -5 -1 1 1 -0 -2 -4 -7 -11 -14 -15 -15 -15 -15 -15 -17 -20 -20 -18 -14 -10 -11 -17 -22 -25 -22 -14 -8 -6 -6 -6 -3 1 3 2 0 -0 2 5 6 5 5 5 7 9 11 12 11 9 7 5 3 0 -2 -5 -7 -9 -10 -11 -11 -12 -11 -9 -8 -7 -7 -6 -6 -5 -4 -3 -2 -2 -4 -8 -9 -9 -7 -6 -7 -9 -7 -5 -3 -3 -5 -7 -8 -7 -5 -3 -5 -9 -13 -15 -13 -8 -1 4 3 -2 -7 -12 -13 -11 -8 -4 -1 -0 -3 -8 -11 -13 -12 -9 -4 -0 0 -2 -5 -9 -13 -14 -14 -13 -11 -8 -4 -1 -1 -1 -4 -6 -8 -8 -5 -2 -2 -6 -11 -13 -12 -9 -6 -5 -6 -9 -11 -11 -12 -13 -14 -15 -15 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -15 -16 -17 -18 -17 -16 -15 -14 -13 -13 -13 -15 -15 -15 -15 -16 -16 -17 -17 -17 -16 -15 -14 -12 -10 -9 -9 -11 -12 -12 -12 -12 -12 -11 -10 -10 -10 -11 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -9 -9 -9 -9 -10 -10 -10 -11 -11 -11 -11 -11 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -9 -8 -8 -8 -8 -8 -9 -9 -9 -10 -10 -10 -10 -9 -9 -10 -10 -11 -11 -11 -12 -13 -14 -14 -15 -15 -15 -16 -16 -16 -16 -16 -17 -17 -17 -17 -16 -15 -15 -16 -16 -15 -14 -13 -12 -11 -11 -11 -11 -11 -11 -10 -10 -9 -9 -8 -8 -8 -7 -7 -8 -8 -8 -7 -7 -6 -6 -7 -8 -8 -8 -6 -5 -4 -4 -4 -4 -5 -5 -4 -3 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -5 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -1 -0 1 1 2 2 3 3 2 2 2 1 1 1 2 2 2 3 3 3 3 3 -19 -14 -10 -10 -13 -13 -13 -13 -13 -13 -11 -11 -10 -8 -4 -0 2 2 0 -2 -4 -6 -8 -12 -14 -16 -16 -15 -15 -16 -19 -21 -20 -17 -12 -11 -15 -21 -25 -25 -18 -9 -4 -4 -4 -2 1 2 1 1 2 4 7 7 6 5 5 6 8 9 10 9 8 5 3 1 -1 -3 -5 -7 -9 -10 -11 -12 -13 -13 -11 -10 -9 -8 -8 -7 -7 -7 -7 -5 -3 -2 -3 -6 -9 -10 -10 -8 -7 -5 -3 -1 -1 -2 -5 -7 -6 -4 -2 -4 -10 -15 -18 -17 -12 -5 2 4 2 -3 -8 -10 -9 -8 -5 -3 -2 -3 -6 -9 -10 -10 -7 -4 -4 -4 -4 -5 -7 -10 -12 -13 -12 -10 -6 -2 -0 -1 -3 -5 -7 -7 -6 -4 -3 -5 -8 -11 -11 -10 -8 -7 -7 -8 -9 -10 -11 -12 -13 -14 -15 -15 -15 -15 -14 -14 -14 -14 -14 -14 -14 -14 -15 -15 -16 -16 -17 -16 -15 -14 -13 -13 -14 -16 -16 -16 -17 -17 -17 -17 -17 -16 -15 -15 -14 -12 -10 -10 -10 -11 -12 -12 -12 -12 -12 -11 -11 -11 -12 -12 -12 -11 -11 -11 -11 -11 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -10 -9 -9 -10 -10 -10 -10 -10 -10 -10 -10 -11 -11 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -9 -8 -8 -8 -8 -8 -8 -8 -9 -9 -10 -10 -10 -10 -10 -10 -10 -11 -11 -11 -12 -12 -13 -14 -15 -15 -15 -15 -16 -16 -16 -16 -17 -17 -17 -17 -16 -16 -15 -15 -16 -16 -15 -14 -14 -13 -12 -12 -11 -11 -11 -11 -11 -11 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -8 -7 -6 -7 -7 -8 -8 -8 -7 -5 -5 -5 -5 -5 -6 -5 -4 -3 -3 -3 -3 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -2 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -5 -5 -5 -4 -4 -4 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -3 -3 -3 -2 -1 -0 0 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 3 3 -23 -16 -10 -7 -8 -10 -11 -13 -14 -15 -14 -15 -14 -11 -6 -1 2 3 1 -2 -5 -7 -7 -9 -12 -14 -15 -15 -14 -15 -17 -20 -21 -20 -15 -11 -14 -20 -25 -26 -19 -10 -4 -3 -3 -3 -2 -1 -1 1 3 6 8 8 6 5 5 6 7 8 8 7 5 2 -0 -1 -2 -4 -6 -7 -9 -9 -10 -11 -12 -13 -12 -11 -10 -9 -9 -8 -8 -9 -10 -8 -6 -4 -3 -6 -10 -13 -14 -12 -9 -6 -3 1 3 2 -2 -6 -6 -5 -4 -6 -11 -16 -18 -18 -15 -10 -3 2 3 1 -3 -6 -7 -7 -7 -7 -6 -5 -6 -6 -6 -5 -3 -4 -7 -9 -8 -7 -5 -6 -9 -10 -9 -6 -2 0 -1 -3 -6 -7 -7 -5 -4 -4 -6 -8 -10 -9 -9 -8 -8 -9 -9 -9 -9 -9 -10 -11 -13 -14 -14 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -16 -17 -17 -17 -16 -14 -13 -14 -16 -17 -17 -17 -18 -18 -18 -17 -16 -15 -15 -14 -14 -12 -11 -10 -10 -11 -11 -12 -12 -12 -12 -11 -12 -13 -13 -13 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -11 -11 -12 -12 -12 -12 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -8 -8 -8 -8 -8 -8 -8 -9 -9 -9 -9 -10 -10 -10 -10 -11 -11 -11 -11 -12 -12 -13 -14 -14 -14 -14 -15 -15 -16 -16 -16 -16 -17 -17 -17 -17 -16 -15 -14 -14 -15 -15 -15 -15 -15 -14 -13 -12 -11 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -9 -8 -7 -7 -7 -7 -8 -8 -7 -6 -5 -5 -5 -6 -6 -6 -6 -5 -4 -4 -4 -4 -4 -4 -4 -4 -5 -5 -5 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -4 -3 -3 -3 -3 -3 -3 -4 -4 -5 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -3 -2 -2 -1 -0 0 0 0 0 0 0 0 0 1 1 1 1 1 2 2 2 2 3 -23 -17 -11 -6 -4 -5 -8 -10 -11 -11 -10 -12 -14 -15 -12 -7 -1 2 2 -0 -3 -5 -6 -8 -10 -12 -14 -14 -14 -13 -15 -18 -21 -21 -18 -13 -13 -18 -23 -24 -19 -10 -4 -2 -3 -4 -4 -4 -3 -0 3 7 10 9 7 6 6 7 7 7 6 4 2 -1 -3 -3 -3 -4 -5 -7 -8 -8 -9 -10 -11 -12 -12 -12 -11 -10 -9 -9 -9 -10 -11 -11 -9 -6 -5 -7 -11 -14 -16 -15 -13 -8 -3 2 5 4 -2 -5 -6 -6 -6 -8 -12 -15 -17 -17 -15 -13 -8 -3 1 2 1 -2 -5 -7 -9 -10 -11 -10 -7 -5 -2 -0 -1 -4 -9 -11 -11 -9 -5 -4 -5 -6 -5 -3 -0 -1 -3 -6 -7 -7 -6 -4 -4 -6 -8 -9 -9 -7 -6 -8 -9 -10 -10 -9 -9 -9 -10 -11 -13 -14 -14 -14 -14 -15 -15 -16 -16 -16 -16 -16 -16 -15 -15 -16 -17 -18 -19 -18 -16 -14 -14 -15 -17 -18 -18 -18 -19 -19 -18 -17 -15 -14 -14 -14 -14 -13 -11 -10 -10 -10 -11 -12 -12 -12 -11 -12 -13 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -13 -12 -12 -11 -11 -11 -12 -13 -13 -12 -12 -11 -10 -10 -10 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -8 -8 -8 -8 -8 -8 -9 -9 -9 -9 -9 -10 -10 -10 -10 -11 -12 -12 -12 -12 -12 -13 -13 -14 -13 -13 -14 -14 -15 -16 -16 -16 -17 -17 -17 -17 -16 -15 -14 -14 -14 -14 -14 -15 -16 -16 -15 -13 -12 -11 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -11 -11 -11 -10 -9 -8 -7 -7 -8 -8 -8 -7 -6 -5 -5 -6 -7 -8 -8 -7 -6 -5 -4 -4 -5 -4 -4 -4 -4 -5 -5 -5 -5 -5 -4 -4 -3 -3 -3 -3 -2 -2 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -3 -4 -5 -5 -5 -5 -5 -4 -4 -4 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -1 -0 0 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 3 -20 -17 -13 -8 -4 -3 -5 -6 -6 -5 -5 -10 -14 -16 -16 -12 -7 -1 1 2 -0 -3 -7 -10 -10 -10 -11 -13 -14 -15 -16 -19 -22 -23 -21 -15 -13 -16 -20 -22 -18 -9 -3 -1 -2 -5 -6 -5 -4 -2 2 7 10 10 9 8 8 8 8 7 5 2 -1 -3 -4 -4 -3 -4 -5 -6 -7 -8 -8 -9 -10 -11 -12 -12 -12 -11 -10 -9 -10 -10 -11 -11 -10 -8 -7 -9 -11 -14 -17 -18 -16 -10 -3 3 5 2 -3 -6 -7 -7 -7 -9 -12 -14 -15 -16 -16 -15 -13 -8 -2 2 2 -0 -4 -7 -9 -12 -13 -12 -9 -5 -1 2 1 -4 -9 -12 -12 -9 -7 -5 -4 -4 -3 -2 -1 -3 -5 -7 -7 -6 -5 -5 -6 -8 -9 -9 -7 -5 -6 -8 -10 -11 -11 -10 -9 -9 -10 -11 -13 -13 -13 -14 -14 -15 -16 -16 -16 -17 -17 -17 -17 -16 -16 -16 -17 -19 -19 -18 -16 -15 -15 -17 -18 -18 -19 -19 -19 -19 -17 -15 -14 -13 -13 -14 -14 -13 -12 -10 -9 -10 -12 -13 -12 -11 -11 -13 -14 -15 -14 -13 -13 -13 -13 -13 -13 -13 -13 -13 -12 -11 -11 -11 -12 -12 -13 -13 -13 -12 -11 -11 -11 -11 -12 -12 -12 -11 -11 -10 -10 -10 -10 -10 -10 -9 -9 -9 -9 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -9 -9 -9 -10 -10 -10 -11 -12 -13 -13 -13 -13 -13 -14 -14 -13 -13 -13 -14 -14 -15 -16 -16 -17 -17 -17 -17 -16 -16 -15 -14 -13 -13 -13 -14 -16 -17 -17 -16 -13 -12 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -11 -11 -11 -11 -10 -9 -8 -8 -9 -9 -9 -9 -7 -6 -5 -5 -6 -8 -9 -8 -8 -6 -5 -5 -5 -5 -5 -4 -4 -4 -4 -5 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -2 -2 -3 -3 -3 -3 -2 -2 -1 -1 -2 -3 -4 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -3 -3 -3 -2 -2 -2 -2 -2 -1 -1 -0 0 1 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 3 -14 -13 -13 -11 -8 -7 -7 -8 -7 -4 -3 -6 -12 -14 -15 -15 -13 -8 -4 -2 -2 -4 -7 -10 -10 -11 -11 -12 -14 -14 -15 -18 -22 -25 -24 -19 -14 -15 -17 -19 -16 -9 -3 -1 -2 -5 -6 -6 -5 -3 1 6 10 12 11 10 9 9 8 7 4 1 -2 -5 -5 -4 -4 -4 -5 -6 -7 -7 -7 -8 -9 -10 -12 -12 -12 -11 -10 -10 -10 -11 -11 -10 -9 -8 -9 -10 -11 -14 -17 -19 -17 -10 -3 2 3 -1 -6 -7 -7 -7 -7 -9 -11 -12 -13 -14 -15 -16 -15 -11 -5 -0 2 -1 -4 -7 -9 -11 -12 -12 -9 -5 -2 -0 -1 -4 -8 -10 -10 -9 -8 -7 -6 -4 -3 -1 -2 -4 -6 -7 -7 -7 -6 -7 -8 -9 -8 -7 -5 -5 -7 -9 -10 -11 -11 -10 -9 -9 -10 -11 -12 -12 -13 -13 -14 -15 -16 -17 -17 -17 -17 -17 -17 -16 -16 -17 -18 -19 -18 -17 -16 -16 -17 -18 -19 -19 -19 -19 -19 -18 -16 -14 -13 -12 -12 -13 -14 -13 -11 -10 -10 -12 -13 -13 -12 -11 -12 -15 -15 -15 -14 -13 -13 -13 -14 -14 -14 -13 -13 -12 -11 -11 -11 -11 -12 -13 -13 -13 -13 -12 -11 -11 -12 -12 -13 -13 -12 -11 -11 -11 -11 -11 -11 -10 -10 -9 -9 -9 -9 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -9 -9 -10 -10 -10 -11 -12 -13 -14 -14 -14 -15 -15 -14 -14 -13 -13 -14 -14 -15 -15 -16 -16 -17 -17 -17 -16 -16 -15 -15 -14 -13 -13 -14 -16 -17 -18 -17 -15 -13 -12 -12 -12 -12 -11 -10 -10 -10 -10 -11 -11 -11 -11 -11 -11 -10 -10 -10 -10 -11 -11 -11 -9 -7 -6 -6 -6 -7 -9 -9 -8 -7 -6 -6 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -5 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -2 -2 -3 -3 -3 -2 -2 -3 -3 -4 -4 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -3 -3 -3 -2 -2 -2 -1 -1 -0 0 1 1 2 3 3 4 4 4 4 4 4 4 4 4 3 3 3 3 3 -6 -7 -9 -11 -11 -11 -12 -12 -9 -6 -5 -6 -7 -8 -10 -12 -14 -13 -10 -6 -3 -3 -5 -8 -10 -11 -12 -13 -14 -14 -15 -17 -21 -25 -26 -22 -17 -14 -14 -15 -14 -10 -5 -3 -2 -4 -5 -6 -5 -4 -0 5 10 13 13 12 11 10 9 7 4 -0 -3 -5 -6 -5 -5 -6 -6 -7 -7 -7 -6 -7 -8 -10 -11 -13 -13 -13 -12 -11 -11 -11 -11 -10 -9 -9 -9 -10 -11 -14 -16 -17 -15 -9 -3 0 -0 -4 -8 -8 -8 -7 -7 -8 -9 -10 -11 -12 -15 -17 -16 -13 -8 -3 -1 -2 -5 -7 -8 -9 -9 -8 -7 -5 -5 -5 -5 -6 -7 -8 -8 -8 -8 -9 -8 -6 -4 -2 -2 -4 -6 -7 -7 -7 -7 -8 -9 -9 -8 -7 -6 -7 -8 -10 -10 -11 -10 -10 -10 -10 -11 -11 -12 -12 -13 -13 -14 -15 -16 -17 -17 -17 -17 -17 -16 -16 -16 -17 -18 -18 -17 -16 -16 -16 -17 -19 -19 -19 -20 -19 -18 -17 -15 -13 -12 -12 -13 -14 -14 -13 -11 -10 -11 -12 -13 -12 -12 -12 -15 -16 -15 -14 -13 -13 -13 -14 -14 -13 -13 -12 -12 -11 -10 -10 -11 -12 -13 -13 -13 -13 -13 -12 -12 -12 -13 -13 -13 -12 -11 -11 -11 -11 -12 -11 -11 -11 -10 -10 -10 -10 -10 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -9 -10 -10 -10 -11 -12 -13 -14 -15 -16 -16 -16 -15 -14 -14 -14 -15 -15 -15 -15 -16 -17 -17 -17 -17 -16 -16 -15 -15 -14 -14 -14 -16 -18 -19 -18 -16 -14 -12 -12 -12 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -12 -12 -11 -11 -12 -12 -12 -12 -11 -9 -7 -7 -7 -8 -8 -8 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -4 -4 -5 -5 -5 -5 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -3 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -2 -2 -2 -2 -1 -1 0 1 1 2 3 3 4 5 5 6 6 6 6 6 6 5 5 5 4 4 4 4 -3 -0 -2 -6 -10 -13 -14 -14 -11 -7 -4 -5 -6 -6 -7 -9 -12 -13 -13 -11 -7 -4 -4 -7 -9 -11 -13 -14 -14 -14 -14 -16 -20 -24 -26 -24 -19 -15 -12 -11 -12 -11 -8 -6 -4 -4 -4 -4 -5 -4 -0 4 10 13 14 13 12 11 10 7 3 -1 -4 -5 -6 -6 -7 -8 -9 -9 -8 -7 -6 -6 -7 -8 -11 -13 -15 -15 -15 -14 -13 -13 -13 -12 -11 -10 -10 -11 -12 -14 -17 -16 -13 -9 -5 -3 -3 -5 -8 -9 -9 -8 -7 -7 -7 -7 -8 -11 -14 -16 -15 -13 -9 -6 -4 -4 -6 -7 -7 -7 -6 -5 -5 -6 -8 -10 -10 -9 -7 -6 -6 -7 -8 -9 -9 -7 -5 -3 -2 -4 -6 -7 -7 -7 -7 -8 -8 -8 -8 -8 -8 -8 -9 -10 -10 -11 -11 -11 -11 -11 -11 -12 -12 -12 -13 -13 -14 -14 -15 -16 -16 -17 -16 -16 -15 -15 -16 -17 -17 -17 -16 -15 -16 -16 -17 -19 -19 -20 -20 -19 -18 -16 -14 -13 -12 -13 -14 -14 -14 -13 -12 -11 -11 -12 -12 -12 -13 -15 -17 -16 -14 -13 -12 -13 -13 -13 -13 -12 -12 -11 -10 -9 -9 -10 -11 -12 -13 -13 -13 -13 -13 -12 -12 -13 -14 -14 -13 -12 -11 -11 -11 -12 -12 -12 -12 -11 -11 -11 -11 -11 -10 -10 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -9 -10 -11 -11 -12 -13 -14 -15 -17 -18 -18 -17 -16 -15 -15 -15 -16 -16 -16 -16 -17 -17 -17 -17 -16 -16 -15 -15 -15 -15 -15 -16 -18 -19 -19 -17 -15 -12 -12 -12 -12 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -12 -12 -12 -13 -13 -13 -14 -13 -12 -11 -9 -8 -8 -8 -9 -9 -8 -6 -5 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -6 -5 -5 -5 -5 -5 -6 -6 -6 -6 -6 -5 -5 -4 -4 -3 -3 -3 -3 -4 -4 -5 -5 -5 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -1 -1 -0 1 1 2 3 4 5 5 6 7 7 7 8 7 7 7 7 7 6 5 5 5 5 -7 -4 -3 -4 -6 -8 -11 -13 -13 -9 -5 -4 -6 -6 -6 -7 -9 -11 -13 -13 -11 -8 -6 -6 -8 -10 -11 -13 -14 -14 -15 -16 -18 -22 -24 -24 -21 -16 -11 -8 -9 -11 -11 -9 -7 -5 -4 -4 -3 -2 1 6 10 14 15 15 14 12 10 7 2 -1 -4 -5 -6 -7 -8 -9 -10 -11 -11 -9 -7 -6 -6 -7 -9 -12 -15 -16 -17 -17 -16 -15 -15 -15 -13 -11 -10 -11 -11 -13 -15 -15 -13 -10 -8 -6 -5 -5 -7 -9 -9 -9 -7 -5 -3 -4 -6 -9 -12 -13 -13 -11 -10 -9 -8 -7 -6 -6 -6 -6 -5 -4 -5 -8 -11 -13 -14 -12 -9 -7 -5 -5 -6 -7 -7 -6 -5 -4 -4 -5 -5 -6 -6 -6 -7 -8 -8 -9 -9 -9 -9 -10 -10 -10 -10 -11 -11 -11 -11 -11 -12 -12 -12 -13 -13 -13 -13 -14 -15 -15 -16 -16 -16 -15 -15 -15 -16 -16 -16 -16 -15 -15 -15 -16 -17 -18 -19 -19 -19 -18 -17 -15 -14 -13 -13 -14 -14 -15 -14 -13 -12 -12 -12 -12 -12 -14 -16 -18 -17 -15 -13 -12 -12 -13 -13 -12 -12 -11 -11 -10 -9 -8 -9 -10 -11 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -13 -12 -11 -11 -11 -12 -12 -13 -12 -12 -12 -12 -12 -12 -12 -11 -11 -10 -9 -9 -9 -9 -9 -9 -8 -8 -8 -8 -8 -9 -10 -11 -12 -13 -13 -14 -15 -16 -18 -19 -19 -18 -17 -16 -17 -17 -17 -16 -16 -17 -17 -18 -18 -17 -16 -15 -15 -15 -15 -16 -17 -18 -20 -19 -18 -15 -12 -11 -12 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -12 -12 -13 -13 -14 -14 -14 -13 -11 -10 -9 -9 -9 -10 -10 -9 -7 -6 -6 -7 -7 -8 -7 -7 -8 -8 -8 -8 -7 -7 -6 -6 -5 -5 -6 -6 -6 -6 -6 -6 -6 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -5 -4 -4 -4 -4 -4 -4 -3 -3 -3 -2 -2 -2 -1 -1 -2 -2 -2 -1 -0 0 1 2 2 3 4 5 6 7 8 8 9 10 10 10 10 9 9 8 7 7 6 6 -12 -11 -10 -8 -6 -5 -7 -12 -14 -12 -7 -4 -6 -8 -8 -8 -8 -9 -11 -12 -13 -11 -9 -8 -8 -8 -9 -11 -13 -15 -15 -16 -17 -20 -22 -23 -21 -17 -12 -7 -7 -10 -12 -11 -9 -7 -6 -4 -3 -1 3 7 11 14 16 16 15 13 10 6 2 -2 -5 -6 -6 -7 -9 -10 -12 -13 -14 -12 -10 -8 -6 -6 -8 -10 -13 -15 -17 -18 -18 -17 -17 -16 -16 -14 -12 -11 -11 -13 -15 -16 -14 -12 -10 -9 -7 -5 -6 -8 -9 -9 -7 -4 -1 -1 -4 -8 -10 -11 -11 -11 -11 -12 -12 -10 -8 -6 -5 -5 -4 -4 -5 -7 -10 -13 -14 -14 -12 -10 -7 -5 -3 -2 -3 -4 -5 -6 -6 -6 -5 -5 -5 -6 -7 -8 -9 -10 -10 -11 -11 -10 -10 -10 -11 -11 -12 -12 -12 -12 -12 -12 -12 -13 -13 -13 -14 -14 -15 -15 -15 -15 -15 -15 -15 -15 -15 -16 -16 -16 -16 -15 -15 -16 -16 -17 -18 -18 -18 -17 -16 -15 -14 -14 -14 -14 -15 -15 -14 -13 -13 -12 -12 -12 -14 -17 -19 -19 -16 -13 -12 -12 -13 -13 -13 -12 -11 -11 -10 -9 -9 -9 -10 -11 -12 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -13 -12 -11 -11 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -12 -11 -10 -10 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -10 -11 -12 -13 -13 -14 -15 -16 -17 -19 -20 -20 -20 -19 -18 -18 -18 -17 -17 -17 -18 -19 -18 -18 -17 -16 -15 -16 -16 -17 -17 -19 -20 -20 -18 -15 -12 -11 -12 -12 -12 -11 -11 -11 -11 -12 -12 -12 -11 -11 -11 -11 -11 -12 -12 -13 -13 -13 -12 -11 -10 -9 -9 -10 -10 -10 -10 -8 -7 -7 -7 -8 -8 -8 -7 -8 -8 -8 -8 -8 -8 -8 -7 -7 -6 -6 -5 -5 -5 -5 -6 -6 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -5 -5 -4 -4 -4 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -1 -0 0 1 1 2 3 4 5 6 8 9 10 11 11 12 12 12 12 11 11 10 9 8 8 -13 -14 -14 -12 -9 -6 -7 -11 -15 -14 -9 -5 -7 -9 -10 -9 -7 -7 -7 -9 -10 -12 -12 -11 -10 -9 -9 -10 -12 -14 -15 -15 -16 -18 -20 -22 -21 -19 -14 -9 -7 -9 -12 -11 -9 -8 -7 -6 -5 -1 3 7 11 14 16 16 14 12 9 5 1 -4 -7 -8 -8 -8 -9 -11 -13 -14 -16 -15 -13 -11 -8 -6 -7 -8 -10 -13 -16 -18 -19 -18 -18 -17 -17 -16 -13 -10 -8 -10 -13 -15 -15 -13 -13 -12 -10 -7 -7 -7 -8 -8 -7 -3 -0 -0 -3 -6 -9 -9 -9 -10 -11 -13 -13 -12 -11 -8 -6 -4 -4 -4 -5 -6 -8 -10 -12 -14 -14 -13 -10 -6 -1 1 0 -3 -7 -9 -9 -6 -4 -4 -5 -6 -8 -9 -10 -11 -11 -11 -11 -11 -11 -11 -11 -12 -12 -13 -13 -13 -12 -12 -12 -13 -13 -14 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -15 -15 -16 -16 -15 -15 -15 -15 -15 -14 -14 -13 -12 -12 -14 -18 -20 -20 -17 -14 -12 -12 -13 -13 -13 -12 -12 -11 -10 -10 -9 -10 -10 -11 -12 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -13 -13 -12 -12 -12 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -13 -12 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -11 -11 -12 -13 -14 -14 -15 -15 -17 -19 -20 -21 -21 -21 -20 -20 -19 -18 -17 -17 -18 -19 -20 -19 -18 -17 -16 -16 -17 -18 -18 -19 -20 -20 -18 -16 -13 -12 -12 -12 -12 -11 -11 -11 -12 -12 -12 -12 -12 -11 -11 -10 -10 -10 -11 -11 -12 -12 -11 -10 -9 -9 -10 -11 -11 -11 -10 -9 -8 -8 -8 -9 -9 -8 -8 -8 -8 -9 -8 -8 -8 -8 -8 -8 -8 -7 -6 -6 -5 -5 -4 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -2 -2 -1 -1 -1 -0 0 1 2 4 5 7 9 10 11 13 13 14 14 14 14 13 13 12 11 10 -11 -12 -13 -13 -12 -10 -9 -11 -13 -13 -11 -7 -7 -9 -9 -9 -8 -8 -8 -7 -8 -11 -14 -15 -13 -11 -9 -8 -10 -13 -14 -14 -14 -16 -18 -20 -21 -20 -16 -12 -9 -10 -12 -12 -10 -8 -7 -8 -7 -5 -1 4 9 13 15 15 14 12 9 4 -1 -5 -8 -9 -8 -8 -8 -10 -12 -14 -16 -17 -16 -14 -11 -8 -7 -7 -8 -11 -14 -17 -19 -20 -19 -18 -17 -16 -15 -13 -10 -10 -12 -14 -15 -15 -15 -15 -13 -11 -9 -9 -9 -9 -6 -3 -0 -1 -4 -6 -7 -7 -7 -9 -11 -12 -13 -13 -12 -11 -9 -6 -5 -5 -5 -5 -6 -7 -9 -11 -12 -12 -10 -6 -1 1 -1 -5 -8 -10 -9 -6 -4 -4 -6 -8 -10 -10 -11 -11 -12 -12 -12 -12 -11 -11 -11 -12 -13 -13 -13 -13 -13 -12 -12 -13 -14 -14 -15 -16 -15 -15 -15 -14 -14 -14 -14 -14 -15 -15 -16 -16 -16 -16 -16 -16 -16 -15 -15 -14 -14 -14 -16 -18 -18 -17 -16 -16 -15 -15 -15 -13 -13 -13 -14 -18 -20 -20 -18 -15 -13 -13 -13 -13 -13 -12 -12 -12 -11 -11 -10 -10 -11 -11 -12 -13 -13 -14 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -13 -13 -13 -14 -14 -15 -15 -14 -13 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -12 -12 -13 -14 -14 -14 -15 -15 -17 -18 -20 -21 -22 -22 -22 -21 -21 -19 -18 -17 -18 -20 -21 -21 -20 -18 -17 -17 -18 -19 -20 -20 -21 -20 -19 -17 -14 -13 -13 -13 -12 -12 -12 -12 -12 -13 -13 -12 -12 -12 -11 -10 -10 -10 -10 -10 -11 -11 -11 -10 -9 -9 -10 -11 -11 -11 -10 -9 -9 -9 -9 -9 -9 -9 -8 -8 -9 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -7 -6 -5 -5 -4 -4 -4 -5 -5 -5 -5 -5 -4 -4 -4 -3 -3 -3 -4 -4 -4 -4 -4 -4 -4 -4 -5 -5 -5 -5 -4 -4 -4 -4 -3 -3 -3 -3 -3 -2 -2 -1 -1 0 1 3 5 7 9 10 12 13 14 15 15 15 15 15 14 14 13 -8 -9 -10 -11 -13 -14 -13 -12 -13 -13 -12 -9 -5 -4 -5 -7 -9 -10 -9 -8 -8 -10 -13 -16 -15 -13 -11 -10 -11 -12 -13 -13 -13 -14 -16 -18 -20 -20 -18 -14 -10 -10 -12 -13 -12 -10 -8 -8 -9 -9 -7 -2 4 11 14 15 14 12 8 3 -2 -6 -8 -9 -8 -7 -8 -9 -10 -12 -15 -16 -17 -16 -15 -12 -9 -7 -7 -9 -13 -17 -20 -21 -20 -19 -17 -16 -16 -15 -13 -12 -12 -13 -16 -17 -17 -17 -16 -14 -13 -12 -12 -10 -6 -2 -1 -3 -5 -7 -7 -6 -6 -8 -10 -11 -12 -12 -12 -12 -11 -9 -7 -6 -6 -5 -5 -5 -6 -8 -9 -8 -6 -4 -3 -3 -5 -7 -8 -8 -6 -5 -5 -6 -8 -9 -10 -11 -11 -12 -12 -12 -12 -12 -11 -11 -11 -12 -13 -13 -13 -13 -13 -12 -12 -13 -14 -15 -16 -16 -15 -15 -14 -14 -14 -14 -14 -14 -14 -15 -16 -16 -16 -16 -16 -15 -15 -14 -13 -12 -13 -15 -17 -19 -19 -18 -17 -16 -16 -15 -14 -13 -13 -15 -18 -21 -21 -19 -15 -13 -13 -13 -14 -13 -13 -12 -12 -12 -12 -11 -11 -11 -12 -12 -13 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -13 -13 -13 -14 -15 -15 -16 -15 -14 -13 -12 -12 -11 -11 -11 -11 -12 -12 -12 -12 -12 -12 -13 -14 -14 -14 -15 -15 -15 -16 -18 -20 -21 -22 -22 -22 -22 -22 -21 -19 -18 -18 -19 -21 -22 -21 -20 -18 -18 -19 -20 -22 -22 -22 -21 -20 -18 -16 -14 -14 -13 -13 -12 -12 -13 -13 -13 -13 -13 -12 -12 -11 -11 -10 -10 -10 -10 -10 -11 -10 -10 -10 -10 -10 -11 -11 -11 -10 -9 -8 -9 -10 -10 -10 -9 -8 -8 -9 -9 -9 -9 -8 -8 -9 -9 -9 -9 -9 -9 -8 -7 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -4 -4 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -3 -3 -2 -2 -1 -0 1 2 4 6 7 10 12 13 14 15 15 15 16 16 16 15 -5 -7 -8 -10 -13 -15 -17 -16 -16 -16 -14 -9 -2 2 -0 -5 -9 -11 -11 -9 -8 -9 -13 -16 -17 -16 -14 -13 -12 -12 -12 -12 -12 -13 -14 -16 -19 -20 -19 -15 -11 -10 -12 -16 -16 -14 -10 -7 -9 -11 -12 -9 -1 8 13 14 13 11 8 3 -2 -6 -9 -9 -8 -7 -7 -8 -9 -10 -12 -15 -16 -17 -17 -15 -12 -8 -7 -8 -11 -15 -19 -20 -20 -19 -18 -16 -16 -16 -14 -13 -13 -13 -16 -17 -18 -19 -18 -18 -17 -17 -15 -12 -7 -3 -2 -5 -7 -8 -7 -5 -5 -7 -8 -9 -10 -10 -11 -11 -12 -11 -10 -8 -7 -5 -5 -4 -4 -4 -4 -3 -3 -4 -6 -8 -8 -8 -6 -5 -4 -4 -6 -8 -9 -10 -10 -11 -12 -12 -12 -12 -12 -12 -11 -11 -12 -12 -13 -13 -13 -13 -13 -12 -13 -13 -14 -15 -15 -15 -15 -14 -14 -13 -13 -13 -13 -13 -14 -15 -15 -16 -16 -16 -15 -15 -14 -13 -12 -12 -14 -16 -19 -21 -20 -19 -18 -17 -16 -15 -14 -14 -15 -18 -21 -22 -20 -16 -14 -13 -14 -14 -14 -13 -12 -13 -13 -13 -12 -12 -12 -12 -12 -13 -14 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -15 -15 -15 -14 -13 -13 -12 -13 -15 -16 -17 -16 -15 -14 -13 -12 -11 -11 -11 -11 -12 -12 -12 -13 -13 -13 -13 -14 -14 -15 -15 -15 -15 -16 -18 -19 -21 -22 -22 -22 -23 -23 -22 -21 -19 -18 -19 -21 -23 -23 -21 -19 -18 -19 -21 -23 -24 -24 -23 -21 -19 -18 -16 -15 -14 -14 -13 -13 -13 -14 -14 -14 -13 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -11 -11 -11 -11 -10 -9 -9 -9 -10 -11 -11 -10 -9 -9 -9 -10 -10 -9 -9 -9 -9 -9 -10 -10 -10 -9 -9 -9 -8 -7 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -2 -2 -1 -1 0 1 3 4 7 9 11 13 14 15 15 16 16 16 16 -4 -4 -6 -8 -10 -13 -17 -20 -21 -20 -16 -9 0 4 1 -4 -9 -12 -13 -11 -9 -10 -13 -16 -18 -18 -17 -15 -14 -13 -12 -12 -12 -12 -13 -14 -17 -19 -19 -16 -12 -9 -12 -17 -20 -19 -14 -8 -8 -11 -14 -13 -5 5 11 13 13 11 8 4 -1 -5 -8 -9 -8 -7 -7 -7 -7 -8 -10 -13 -15 -16 -17 -17 -14 -11 -8 -8 -9 -12 -16 -19 -20 -20 -18 -16 -16 -15 -15 -14 -14 -12 -14 -16 -18 -19 -19 -20 -21 -20 -18 -14 -8 -4 -4 -5 -7 -8 -7 -5 -5 -6 -7 -8 -8 -8 -8 -9 -11 -11 -11 -9 -8 -6 -5 -4 -3 -2 -0 -1 -3 -6 -10 -11 -10 -7 -4 -2 -3 -6 -8 -9 -10 -10 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -14 -15 -15 -15 -15 -14 -14 -13 -13 -13 -13 -13 -13 -13 -14 -15 -15 -16 -15 -14 -13 -12 -12 -12 -13 -15 -18 -21 -21 -20 -19 -18 -17 -16 -15 -14 -15 -18 -21 -23 -21 -17 -15 -14 -15 -15 -14 -13 -13 -13 -14 -14 -14 -13 -12 -12 -12 -13 -13 -14 -14 -13 -13 -12 -13 -13 -13 -13 -13 -14 -15 -15 -16 -16 -15 -14 -13 -13 -14 -16 -17 -18 -17 -16 -14 -13 -12 -11 -11 -11 -12 -12 -12 -12 -13 -13 -13 -14 -14 -14 -14 -15 -15 -15 -16 -17 -19 -20 -21 -22 -22 -22 -23 -23 -23 -20 -19 -19 -20 -23 -23 -22 -20 -18 -18 -20 -22 -24 -24 -23 -22 -20 -20 -19 -17 -16 -15 -14 -14 -14 -15 -15 -14 -13 -12 -12 -12 -12 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -10 -10 -11 -11 -11 -10 -9 -9 -10 -10 -11 -10 -9 -9 -9 -10 -10 -10 -10 -10 -10 -10 -10 -9 -8 -7 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -3 -3 -3 -3 -3 -3 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -2 -2 -1 -1 -0 0 1 2 4 6 9 11 13 14 14 15 15 15 15 -9 -4 -3 -5 -7 -10 -14 -18 -22 -22 -20 -14 -4 2 1 -3 -9 -13 -14 -13 -11 -11 -13 -16 -18 -18 -18 -17 -16 -15 -14 -13 -12 -12 -12 -13 -15 -18 -19 -17 -14 -10 -11 -16 -21 -22 -19 -12 -9 -11 -14 -15 -9 1 8 11 12 10 8 4 0 -3 -5 -6 -6 -6 -6 -6 -7 -8 -9 -11 -13 -14 -15 -16 -16 -14 -11 -9 -8 -9 -12 -16 -18 -20 -19 -17 -16 -15 -14 -13 -12 -11 -11 -14 -16 -18 -19 -21 -21 -21 -19 -15 -10 -6 -4 -5 -6 -7 -7 -6 -5 -6 -6 -7 -6 -6 -6 -7 -8 -9 -9 -8 -8 -7 -6 -4 -2 -0 -0 -2 -6 -9 -12 -11 -9 -6 -3 -3 -5 -8 -10 -11 -11 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -15 -15 -15 -15 -14 -13 -13 -13 -13 -13 -12 -12 -13 -13 -14 -15 -15 -15 -13 -12 -12 -12 -12 -14 -17 -20 -21 -21 -20 -18 -17 -17 -16 -15 -16 -18 -21 -23 -22 -19 -16 -15 -15 -16 -15 -14 -13 -14 -15 -15 -15 -14 -13 -12 -13 -13 -13 -13 -14 -13 -13 -12 -12 -13 -13 -13 -13 -14 -15 -15 -16 -16 -16 -15 -14 -15 -16 -17 -19 -19 -18 -17 -15 -13 -12 -11 -11 -11 -12 -12 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -15 -15 -15 -17 -18 -20 -21 -22 -22 -22 -23 -23 -23 -22 -20 -19 -20 -22 -24 -23 -20 -18 -18 -19 -21 -23 -24 -23 -22 -21 -22 -21 -20 -18 -16 -15 -16 -16 -17 -17 -16 -15 -13 -12 -12 -13 -13 -13 -12 -12 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -10 -11 -11 -12 -12 -12 -11 -10 -9 -10 -11 -11 -11 -10 -9 -10 -10 -10 -10 -10 -11 -11 -11 -11 -10 -10 -9 -8 -7 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -1 -1 -1 -0 1 1 3 4 6 8 10 12 13 14 14 14 14 -14 -8 -4 -4 -7 -9 -10 -14 -20 -23 -23 -19 -10 -2 0 -3 -9 -15 -17 -15 -13 -12 -13 -16 -17 -18 -18 -18 -17 -16 -15 -14 -13 -12 -12 -12 -14 -16 -18 -18 -16 -11 -11 -15 -20 -24 -22 -16 -11 -11 -13 -15 -12 -5 2 7 9 9 6 3 0 -2 -3 -3 -3 -3 -3 -4 -6 -7 -9 -10 -11 -12 -12 -12 -14 -15 -14 -12 -10 -9 -9 -11 -14 -16 -18 -18 -18 -16 -13 -10 -6 -5 -7 -11 -13 -16 -17 -19 -19 -19 -18 -16 -12 -8 -5 -4 -4 -5 -6 -6 -5 -5 -6 -6 -6 -5 -5 -5 -5 -6 -6 -7 -8 -8 -7 -5 -2 -1 -3 -7 -9 -11 -11 -9 -7 -5 -5 -6 -8 -10 -11 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -15 -15 -15 -14 -14 -13 -13 -13 -12 -12 -12 -12 -12 -13 -14 -15 -15 -14 -13 -12 -12 -13 -14 -15 -18 -20 -21 -20 -18 -17 -17 -16 -16 -16 -18 -20 -22 -23 -20 -17 -16 -16 -17 -16 -15 -14 -14 -15 -16 -16 -14 -13 -13 -13 -13 -13 -14 -14 -13 -13 -12 -12 -13 -13 -14 -14 -14 -15 -16 -16 -16 -16 -16 -16 -16 -17 -19 -20 -20 -19 -17 -15 -13 -12 -11 -11 -11 -12 -13 -13 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -15 -16 -17 -19 -20 -22 -22 -22 -23 -23 -24 -23 -21 -20 -21 -23 -24 -23 -21 -19 -18 -18 -20 -22 -22 -22 -21 -22 -23 -23 -22 -19 -17 -16 -17 -19 -20 -20 -19 -17 -15 -14 -14 -14 -15 -15 -14 -13 -13 -13 -12 -12 -12 -12 -12 -11 -11 -11 -11 -11 -11 -12 -12 -13 -12 -11 -10 -10 -11 -12 -12 -12 -11 -10 -10 -11 -11 -10 -10 -11 -11 -11 -11 -11 -11 -11 -11 -10 -9 -7 -7 -6 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -1 -1 -0 -0 0 1 2 3 4 6 8 10 11 12 13 13 13 -20 -16 -11 -9 -9 -10 -10 -11 -16 -20 -23 -21 -15 -6 -2 -5 -11 -17 -20 -17 -13 -12 -13 -15 -17 -17 -17 -17 -17 -17 -17 -16 -15 -13 -12 -12 -13 -15 -17 -19 -18 -14 -12 -14 -19 -23 -23 -20 -15 -13 -13 -14 -14 -11 -5 1 4 6 5 2 -0 -1 -0 1 1 1 1 -1 -3 -5 -7 -8 -9 -10 -9 -9 -10 -12 -13 -13 -13 -12 -10 -9 -9 -12 -14 -17 -19 -19 -17 -14 -11 -7 -7 -8 -11 -14 -15 -16 -17 -17 -17 -16 -14 -11 -8 -6 -4 -4 -4 -4 -4 -5 -5 -6 -7 -6 -5 -3 -2 -2 -2 -5 -9 -10 -9 -6 -2 -3 -7 -10 -11 -10 -8 -6 -6 -6 -8 -10 -11 -11 -11 -12 -13 -13 -13 -12 -12 -12 -12 -12 -12 -13 -13 -13 -13 -13 -12 -12 -13 -13 -13 -13 -14 -15 -15 -15 -15 -14 -14 -13 -13 -13 -12 -12 -12 -12 -13 -14 -15 -16 -15 -15 -14 -13 -14 -14 -15 -16 -17 -18 -19 -18 -17 -17 -16 -17 -17 -18 -20 -22 -23 -21 -18 -17 -17 -18 -18 -16 -14 -14 -15 -16 -17 -15 -14 -13 -14 -14 -15 -14 -14 -13 -13 -13 -13 -13 -14 -14 -14 -15 -15 -16 -16 -16 -16 -16 -16 -18 -19 -21 -21 -21 -20 -18 -16 -14 -13 -12 -12 -12 -12 -13 -14 -15 -15 -15 -15 -15 -15 -14 -14 -14 -14 -14 -14 -15 -16 -17 -19 -21 -22 -22 -22 -23 -23 -23 -22 -21 -22 -23 -24 -24 -22 -19 -18 -19 -20 -22 -22 -20 -20 -21 -23 -24 -23 -20 -18 -17 -19 -21 -23 -23 -22 -20 -18 -17 -17 -17 -17 -17 -16 -15 -14 -14 -14 -14 -13 -13 -13 -12 -12 -12 -12 -12 -12 -12 -13 -13 -13 -12 -11 -11 -12 -12 -13 -12 -12 -11 -11 -11 -12 -11 -11 -11 -11 -11 -11 -12 -12 -12 -12 -12 -11 -10 -9 -8 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -1 -1 -1 -2 -2 -2 -2 -2 -2 -1 -1 -1 -0 -0 0 1 1 2 3 4 6 8 9 10 11 12 13 -23 -23 -18 -15 -13 -13 -14 -12 -12 -16 -20 -21 -16 -9 -5 -7 -14 -20 -22 -19 -13 -11 -12 -14 -16 -17 -17 -17 -17 -18 -18 -17 -16 -14 -13 -12 -12 -13 -16 -18 -19 -17 -14 -14 -17 -21 -23 -22 -18 -15 -14 -14 -15 -14 -11 -7 -3 0 3 2 1 1 1 2 3 4 4 3 1 -2 -4 -5 -7 -7 -7 -6 -6 -8 -10 -12 -13 -13 -12 -10 -9 -9 -10 -13 -17 -18 -18 -17 -14 -9 -7 -7 -10 -12 -13 -14 -15 -15 -16 -16 -16 -16 -13 -11 -8 -5 -3 -2 -2 -3 -4 -6 -8 -8 -6 -3 -1 1 -0 -4 -9 -11 -10 -6 -3 -4 -7 -9 -9 -7 -5 -5 -7 -10 -13 -14 -13 -12 -12 -12 -12 -13 -12 -12 -12 -11 -11 -12 -12 -13 -13 -13 -13 -12 -12 -13 -13 -13 -13 -14 -14 -15 -15 -15 -15 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -14 -16 -16 -16 -15 -15 -15 -15 -15 -16 -16 -16 -17 -17 -17 -17 -17 -17 -17 -19 -21 -22 -23 -22 -20 -18 -18 -19 -20 -18 -16 -14 -15 -16 -17 -16 -15 -14 -14 -15 -16 -16 -15 -14 -13 -13 -13 -14 -14 -15 -15 -15 -15 -16 -16 -16 -16 -16 -17 -18 -20 -22 -23 -22 -21 -19 -17 -15 -14 -13 -13 -13 -13 -14 -14 -15 -16 -16 -16 -16 -16 -15 -15 -15 -15 -15 -15 -14 -15 -16 -18 -19 -21 -22 -22 -22 -22 -22 -22 -21 -22 -23 -24 -24 -23 -20 -19 -19 -21 -22 -22 -20 -19 -20 -22 -23 -23 -20 -18 -17 -19 -22 -24 -25 -24 -23 -21 -21 -21 -21 -21 -20 -19 -17 -16 -16 -16 -16 -16 -15 -15 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -12 -12 -12 -13 -13 -14 -13 -12 -12 -12 -12 -12 -12 -12 -12 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -10 -9 -7 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -2 -2 -1 -1 -1 -1 -1 -2 -2 -2 -2 -1 -1 -1 -1 -1 -0 -0 0 1 1 2 3 4 6 7 9 10 11 12 -25 -26 -22 -19 -17 -18 -18 -16 -12 -13 -16 -18 -14 -7 -3 -6 -14 -21 -25 -20 -13 -9 -9 -12 -15 -16 -17 -17 -18 -18 -19 -18 -17 -16 -14 -13 -12 -13 -15 -18 -20 -20 -17 -14 -15 -18 -21 -22 -20 -18 -16 -15 -15 -15 -15 -13 -10 -6 -0 3 3 2 2 3 4 5 5 5 3 2 -0 -2 -3 -4 -5 -5 -4 -5 -6 -8 -10 -11 -12 -12 -11 -10 -10 -11 -14 -16 -17 -17 -14 -9 -6 -6 -8 -9 -11 -12 -13 -14 -15 -16 -18 -19 -18 -16 -12 -8 -5 -2 -1 -1 -3 -6 -9 -10 -8 -4 -0 2 2 -3 -8 -11 -10 -7 -4 -4 -6 -7 -7 -6 -5 -7 -11 -14 -16 -15 -13 -12 -12 -12 -12 -12 -13 -12 -12 -11 -11 -12 -13 -13 -13 -13 -13 -12 -12 -13 -13 -13 -14 -14 -14 -14 -15 -15 -15 -14 -14 -13 -13 -13 -13 -13 -13 -14 -14 -15 -16 -16 -16 -15 -15 -15 -16 -16 -16 -16 -16 -16 -16 -17 -17 -18 -18 -19 -20 -22 -23 -23 -21 -19 -20 -21 -21 -21 -18 -16 -15 -16 -17 -17 -16 -14 -15 -16 -18 -18 -17 -15 -14 -13 -14 -14 -15 -16 -16 -16 -16 -16 -16 -16 -16 -16 -17 -18 -20 -22 -23 -23 -22 -20 -18 -16 -15 -14 -14 -14 -14 -14 -15 -16 -17 -17 -17 -17 -17 -17 -16 -16 -15 -15 -15 -15 -15 -15 -17 -18 -20 -21 -21 -21 -21 -21 -21 -21 -22 -23 -24 -24 -22 -21 -19 -20 -22 -23 -24 -22 -20 -20 -21 -22 -22 -20 -18 -17 -19 -22 -25 -26 -25 -24 -24 -24 -25 -25 -25 -23 -21 -19 -18 -18 -18 -18 -18 -17 -17 -16 -16 -15 -15 -15 -15 -15 -14 -14 -13 -13 -13 -13 -14 -14 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -13 -12 -12 -12 -12 -13 -13 -13 -13 -13 -13 -12 -11 -10 -8 -7 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -2 -2 -2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -0 0 0 1 2 2 3 4 6 7 9 10 11 -25 -28 -25 -21 -18 -18 -21 -20 -16 -13 -14 -14 -10 -0 3 -0 -10 -20 -26 -22 -15 -9 -8 -10 -13 -14 -16 -17 -18 -19 -19 -19 -18 -17 -16 -14 -13 -13 -15 -18 -21 -22 -20 -16 -14 -14 -17 -20 -21 -20 -18 -16 -15 -16 -16 -16 -15 -11 -5 1 3 3 3 3 4 4 5 5 5 4 2 1 -0 -2 -2 -2 -2 -2 -3 -4 -6 -8 -10 -11 -12 -12 -12 -12 -12 -13 -14 -14 -12 -8 -5 -5 -6 -7 -9 -10 -12 -13 -14 -15 -17 -20 -20 -19 -16 -12 -8 -4 -1 0 -1 -4 -8 -11 -10 -6 -1 3 3 -1 -6 -9 -10 -7 -5 -4 -5 -6 -6 -6 -8 -12 -15 -16 -16 -15 -13 -13 -12 -12 -13 -13 -13 -12 -12 -12 -12 -12 -13 -13 -13 -13 -12 -12 -13 -13 -13 -13 -13 -13 -14 -14 -14 -15 -15 -14 -14 -13 -13 -13 -13 -14 -14 -14 -15 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -17 -18 -19 -20 -20 -21 -22 -22 -22 -21 -21 -22 -23 -23 -21 -19 -17 -17 -17 -17 -16 -15 -15 -17 -19 -20 -19 -17 -15 -14 -14 -15 -16 -17 -17 -17 -16 -16 -17 -17 -17 -17 -17 -18 -20 -22 -23 -23 -22 -21 -19 -17 -16 -15 -15 -15 -15 -15 -15 -16 -17 -17 -17 -18 -18 -18 -17 -17 -17 -16 -16 -16 -15 -15 -16 -17 -19 -20 -21 -20 -20 -20 -20 -21 -22 -23 -24 -23 -22 -20 -19 -20 -22 -24 -25 -24 -22 -21 -22 -22 -21 -20 -18 -18 -19 -22 -25 -26 -26 -25 -24 -25 -26 -28 -28 -26 -24 -22 -21 -20 -20 -20 -20 -19 -19 -18 -18 -17 -17 -16 -16 -16 -16 -15 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -15 -14 -14 -14 -14 -14 -14 -13 -14 -14 -14 -14 -14 -13 -13 -13 -13 -12 -11 -10 -8 -7 -6 -5 -5 -5 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -3 -3 -3 -3 -2 -2 -2 -2 -2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -0 -0 0 1 1 2 2 3 5 6 8 9 10 -25 -28 -27 -22 -18 -16 -19 -21 -20 -17 -15 -14 -11 -4 2 2 -4 -15 -24 -24 -17 -11 -8 -9 -10 -12 -14 -16 -18 -20 -20 -20 -19 -18 -18 -16 -15 -14 -16 -18 -21 -23 -22 -18 -14 -12 -13 -17 -20 -21 -20 -18 -17 -16 -17 -17 -17 -15 -11 -5 -0 2 3 4 4 4 4 4 5 5 4 2 1 0 -0 -1 -0 -0 -1 -1 -2 -3 -5 -8 -10 -12 -14 -14 -13 -13 -12 -12 -10 -6 -4 -4 -4 -5 -7 -9 -10 -11 -12 -13 -15 -18 -19 -19 -17 -15 -12 -7 -3 -0 -0 -3 -7 -11 -11 -8 -3 2 4 1 -4 -7 -8 -7 -6 -5 -6 -6 -7 -9 -12 -15 -16 -16 -15 -14 -14 -13 -13 -13 -14 -14 -14 -13 -12 -12 -12 -13 -13 -13 -13 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -15 -15 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -17 -19 -20 -21 -21 -21 -21 -21 -21 -21 -21 -22 -24 -25 -24 -22 -20 -18 -18 -17 -17 -17 -16 -18 -20 -21 -21 -19 -16 -15 -15 -16 -17 -18 -18 -18 -17 -17 -17 -18 -18 -18 -18 -19 -20 -21 -22 -22 -22 -21 -20 -19 -17 -16 -16 -15 -15 -15 -15 -16 -16 -17 -17 -17 -18 -18 -18 -18 -18 -18 -18 -17 -17 -16 -17 -18 -19 -20 -20 -20 -19 -19 -19 -20 -22 -23 -24 -23 -21 -19 -19 -20 -23 -25 -26 -26 -25 -24 -23 -23 -22 -20 -19 -19 -20 -22 -24 -25 -25 -25 -25 -25 -26 -28 -29 -28 -26 -25 -24 -23 -22 -22 -21 -21 -20 -20 -19 -19 -18 -18 -17 -17 -17 -17 -16 -16 -16 -15 -15 -15 -14 -14 -14 -14 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -14 -14 -14 -13 -13 -12 -11 -11 -10 -9 -8 -7 -6 -5 -5 -5 -5 -5 -6 -6 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -2 -2 -1 -1 -0 -0 -0 -0 -0 -0 -1 -1 -1 -0 -0 0 0 1 2 3 4 5 7 8 9 -22 -26 -28 -25 -21 -16 -14 -17 -19 -18 -15 -13 -12 -8 -1 3 -1 -9 -18 -21 -18 -13 -10 -9 -9 -10 -12 -14 -17 -19 -20 -19 -19 -19 -18 -18 -17 -16 -16 -18 -20 -22 -24 -21 -16 -12 -11 -13 -18 -20 -20 -19 -18 -17 -18 -18 -18 -18 -15 -11 -6 -1 2 4 4 4 4 4 4 4 3 2 1 -0 -1 -1 -0 -0 -0 -0 0 0 -0 -2 -4 -7 -10 -13 -14 -13 -12 -11 -8 -5 -3 -2 -3 -4 -6 -8 -9 -9 -9 -10 -11 -13 -15 -16 -17 -16 -14 -10 -6 -2 0 -1 -5 -9 -11 -10 -6 0 4 3 -1 -5 -7 -7 -7 -7 -7 -8 -10 -13 -15 -16 -16 -15 -15 -15 -15 -14 -15 -15 -15 -15 -14 -14 -13 -13 -13 -13 -13 -13 -13 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -14 -14 -14 -15 -15 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -15 -15 -16 -17 -18 -20 -21 -21 -21 -20 -20 -21 -21 -22 -23 -24 -26 -26 -26 -24 -21 -19 -18 -18 -18 -18 -19 -21 -23 -22 -21 -18 -16 -16 -17 -18 -19 -19 -19 -18 -18 -18 -18 -19 -19 -19 -19 -20 -21 -22 -22 -21 -21 -20 -20 -18 -17 -16 -15 -15 -15 -15 -16 -16 -16 -16 -16 -17 -17 -18 -19 -19 -19 -19 -19 -18 -18 -18 -18 -19 -19 -20 -19 -19 -18 -19 -20 -21 -23 -24 -22 -20 -19 -18 -20 -23 -25 -27 -27 -26 -25 -25 -24 -23 -22 -21 -22 -22 -23 -24 -25 -25 -25 -25 -25 -26 -27 -28 -28 -27 -26 -26 -25 -25 -25 -23 -22 -21 -21 -21 -20 -19 -19 -18 -18 -18 -18 -18 -18 -17 -17 -17 -16 -15 -15 -15 -15 -15 -15 -16 -16 -16 -16 -16 -17 -17 -17 -17 -17 -17 -16 -16 -16 -16 -15 -15 -14 -13 -12 -12 -11 -11 -10 -9 -8 -7 -6 -5 -5 -5 -5 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -3 -3 -3 -2 -2 -1 -1 -0 -0 0 0 0 0 0 -0 -0 -0 -0 -0 0 0 1 2 3 4 6 8 9 -18 -23 -28 -29 -25 -19 -13 -12 -15 -17 -17 -16 -15 -12 -5 1 1 -4 -13 -18 -18 -15 -13 -11 -10 -10 -11 -13 -16 -19 -19 -19 -18 -18 -19 -18 -18 -17 -17 -17 -18 -21 -23 -24 -21 -15 -10 -10 -15 -19 -20 -20 -19 -18 -18 -19 -20 -20 -18 -15 -11 -7 -2 1 4 5 5 5 4 3 2 1 -0 -2 -3 -3 -3 -2 -2 -1 -0 1 3 3 3 4 2 -3 -9 -12 -12 -11 -9 -5 -2 -1 -1 -2 -4 -6 -7 -7 -8 -8 -9 -10 -11 -13 -15 -15 -15 -12 -8 -4 -0 0 -2 -7 -10 -11 -8 -3 3 3 -0 -4 -6 -7 -8 -9 -10 -11 -13 -15 -16 -16 -15 -15 -15 -15 -16 -16 -16 -16 -16 -16 -15 -15 -14 -14 -14 -14 -13 -13 -13 -13 -13 -13 -14 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -14 -15 -15 -15 -15 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -15 -15 -15 -16 -18 -20 -21 -21 -21 -20 -20 -20 -20 -21 -22 -24 -26 -27 -28 -27 -25 -22 -20 -19 -19 -19 -20 -22 -24 -24 -22 -20 -18 -18 -18 -20 -20 -20 -19 -19 -19 -19 -19 -19 -19 -20 -20 -20 -21 -22 -22 -21 -21 -21 -20 -20 -18 -17 -15 -15 -15 -15 -16 -16 -16 -16 -15 -16 -16 -18 -19 -20 -20 -21 -21 -21 -20 -19 -19 -19 -20 -20 -19 -19 -19 -19 -20 -22 -23 -23 -22 -20 -18 -18 -21 -24 -26 -27 -27 -26 -26 -26 -25 -24 -23 -23 -24 -25 -25 -25 -25 -25 -25 -25 -25 -25 -26 -26 -26 -26 -25 -26 -26 -27 -27 -26 -24 -23 -22 -22 -22 -21 -20 -19 -18 -18 -18 -18 -18 -18 -19 -18 -18 -17 -16 -16 -16 -16 -15 -16 -16 -17 -17 -17 -18 -18 -18 -18 -18 -18 -18 -18 -18 -17 -17 -16 -15 -14 -13 -12 -12 -12 -12 -11 -11 -10 -8 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -3 -3 -3 -2 -2 -1 -1 -0 -0 0 0 1 1 1 1 1 0 0 0 1 1 2 2 4 5 7 9 -13 -17 -24 -28 -27 -22 -17 -14 -13 -15 -17 -19 -20 -18 -11 -2 2 -1 -9 -15 -17 -17 -16 -15 -13 -12 -12 -14 -16 -18 -19 -18 -17 -18 -18 -18 -18 -18 -18 -17 -18 -19 -22 -24 -23 -19 -13 -9 -12 -16 -19 -20 -19 -17 -18 -19 -21 -21 -19 -16 -13 -11 -8 -4 0 4 6 7 6 5 3 1 -0 -2 -3 -5 -6 -6 -5 -4 -3 -1 4 10 12 11 8 4 1 -3 -6 -8 -8 -7 -3 -1 0 -0 -3 -5 -6 -7 -8 -8 -8 -8 -9 -11 -13 -15 -15 -13 -10 -6 -2 1 0 -4 -8 -10 -8 -5 -0 1 -1 -3 -5 -7 -9 -11 -12 -14 -15 -15 -15 -15 -15 -15 -16 -17 -17 -17 -17 -18 -17 -17 -16 -16 -15 -15 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -13 -13 -13 -14 -14 -14 -14 -14 -14 -15 -15 -15 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -15 -15 -15 -16 -17 -19 -21 -21 -21 -20 -20 -19 -20 -20 -21 -23 -25 -28 -29 -29 -27 -25 -22 -21 -20 -21 -22 -23 -25 -25 -24 -22 -21 -20 -20 -21 -21 -20 -20 -19 -20 -20 -20 -20 -20 -20 -20 -20 -21 -21 -21 -21 -21 -21 -21 -21 -20 -18 -17 -15 -15 -15 -16 -17 -17 -17 -16 -15 -16 -17 -18 -20 -21 -21 -22 -22 -22 -22 -21 -20 -20 -20 -20 -19 -19 -20 -21 -22 -23 -23 -22 -20 -19 -20 -22 -25 -27 -27 -27 -26 -25 -25 -25 -25 -24 -24 -25 -26 -27 -27 -26 -26 -26 -26 -26 -26 -26 -26 -26 -25 -25 -25 -25 -26 -27 -27 -26 -25 -24 -23 -23 -23 -21 -20 -19 -19 -18 -18 -18 -18 -19 -19 -19 -19 -18 -18 -18 -17 -17 -16 -16 -17 -17 -18 -18 -19 -19 -19 -20 -20 -20 -20 -20 -19 -19 -18 -17 -16 -15 -14 -13 -12 -12 -12 -12 -12 -11 -9 -8 -7 -7 -7 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -4 -4 -4 -4 -3 -3 -3 -2 -2 -1 -1 -0 0 0 1 1 1 1 1 1 1 1 1 2 2 3 4 5 6 8 -11 -12 -17 -23 -25 -25 -23 -20 -17 -16 -17 -20 -22 -22 -16 -6 -0 0 -5 -13 -16 -17 -17 -17 -16 -14 -13 -14 -16 -18 -19 -18 -17 -17 -17 -18 -18 -18 -18 -18 -18 -19 -21 -23 -24 -22 -17 -11 -10 -13 -17 -19 -19 -17 -17 -18 -20 -20 -18 -16 -14 -13 -12 -10 -6 -2 3 6 7 7 5 3 1 -1 -2 -4 -6 -7 -8 -8 -6 -3 1 4 7 7 4 0 -0 -0 -0 -1 -3 -4 -2 0 1 1 -1 -4 -7 -9 -10 -10 -10 -10 -10 -11 -13 -14 -15 -14 -12 -8 -4 -0 1 -1 -4 -6 -7 -6 -4 -3 -3 -4 -5 -8 -10 -12 -14 -15 -15 -15 -14 -15 -16 -17 -18 -18 -18 -19 -19 -19 -18 -18 -17 -17 -16 -16 -15 -15 -15 -15 -14 -15 -15 -15 -14 -14 -14 -14 -14 -15 -15 -15 -15 -15 -15 -15 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -15 -15 -16 -16 -16 -16 -15 -15 -16 -17 -18 -20 -21 -21 -20 -20 -20 -20 -20 -21 -22 -24 -27 -29 -29 -29 -27 -25 -23 -22 -23 -23 -25 -26 -27 -26 -24 -23 -22 -22 -22 -22 -21 -20 -20 -20 -21 -21 -21 -20 -20 -20 -21 -20 -20 -20 -20 -20 -20 -21 -21 -21 -20 -19 -17 -16 -15 -16 -17 -18 -18 -17 -17 -16 -17 -18 -19 -20 -21 -22 -23 -23 -23 -23 -22 -21 -21 -20 -20 -20 -20 -22 -23 -23 -23 -23 -21 -21 -22 -24 -26 -27 -27 -26 -24 -24 -24 -25 -25 -25 -25 -26 -27 -28 -28 -27 -27 -27 -27 -28 -28 -28 -28 -27 -27 -26 -25 -25 -26 -26 -27 -26 -26 -25 -25 -25 -24 -23 -22 -21 -20 -19 -18 -18 -18 -18 -19 -19 -19 -20 -20 -20 -19 -18 -18 -18 -18 -18 -18 -19 -19 -20 -20 -20 -21 -21 -21 -21 -21 -21 -20 -19 -18 -17 -15 -15 -14 -13 -13 -13 -13 -13 -12 -10 -9 -8 -8 -8 -7 -7 -7 -7 -7 -7 -6 -6 -6 -6 -6 -5 -5 -5 -5 -4 -4 -4 -3 -3 -3 -3 -2 -2 -1 -1 -0 0 1 1 1 1 2 2 2 2 2 2 3 3 4 4 5 7 -13 -9 -11 -16 -22 -26 -27 -26 -23 -20 -17 -18 -19 -21 -18 -10 -3 -0 -3 -10 -14 -16 -16 -17 -17 -17 -15 -15 -17 -19 -20 -20 -19 -18 -18 -18 -17 -17 -17 -18 -18 -19 -20 -22 -24 -24 -21 -16 -11 -11 -14 -17 -18 -17 -17 -17 -19 -19 -18 -16 -15 -14 -14 -14 -12 -9 -4 1 4 6 6 4 3 1 -1 -2 -4 -7 -9 -10 -8 -5 -2 -2 1 3 4 1 -1 -3 -2 -1 -0 -2 -1 1 2 2 -1 -5 -9 -11 -12 -12 -12 -12 -12 -13 -14 -15 -15 -15 -13 -10 -7 -3 0 1 -0 -2 -4 -6 -7 -7 -7 -6 -7 -9 -11 -13 -14 -15 -15 -14 -15 -16 -18 -19 -19 -19 -20 -20 -20 -20 -19 -18 -18 -17 -17 -16 -16 -16 -16 -16 -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 -15 -16 -16 -16 -16 -16 -16 -16 -17 -18 -19 -20 -20 -20 -20 -20 -20 -20 -21 -22 -23 -25 -28 -29 -29 -28 -27 -25 -24 -24 -25 -26 -27 -28 -28 -26 -25 -24 -24 -24 -23 -22 -20 -20 -21 -22 -22 -21 -20 -20 -20 -20 -20 -20 -20 -20 -20 -19 -20 -20 -21 -21 -21 -19 -18 -17 -17 -18 -19 -20 -19 -19 -18 -18 -19 -20 -20 -21 -22 -22 -23 -23 -24 -23 -23 -22 -22 -21 -21 -22 -23 -23 -24 -24 -23 -23 -22 -24 -25 -26 -27 -26 -25 -24 -24 -25 -25 -26 -26 -26 -27 -29 -29 -29 -28 -28 -28 -28 -29 -29 -29 -29 -29 -28 -28 -27 -27 -26 -26 -26 -26 -26 -26 -26 -26 -26 -25 -23 -22 -21 -20 -20 -19 -18 -18 -18 -19 -19 -20 -21 -21 -21 -20 -20 -19 -19 -19 -19 -19 -19 -20 -21 -21 -21 -22 -22 -22 -22 -22 -22 -21 -20 -19 -17 -16 -16 -15 -15 -14 -14 -14 -14 -13 -11 -10 -9 -9 -9 -8 -8 -8 -8 -7 -7 -7 -7 -6 -6 -6 -5 -5 -5 -5 -4 -4 -4 -3 -3 -3 -3 -3 -2 -2 -1 -1 -0 0 0 1 1 1 2 2 2 3 3 3 3 4 4 5 5 -16 -10 -8 -11 -17 -24 -29 -30 -28 -22 -17 -15 -15 -18 -17 -12 -6 -2 -3 -8 -13 -14 -15 -17 -18 -19 -17 -17 -18 -20 -22 -22 -21 -20 -19 -18 -17 -16 -16 -16 -17 -18 -18 -20 -23 -24 -24 -21 -16 -13 -13 -15 -17 -17 -16 -15 -16 -17 -17 -17 -16 -15 -15 -16 -16 -14 -11 -7 -2 1 3 3 2 1 0 -1 -2 -5 -8 -9 -8 -7 -7 -6 -3 -0 1 1 -0 -3 -4 -3 -2 -2 -0 1 2 0 -4 -8 -12 -14 -15 -15 -15 -15 -15 -14 -15 -15 -15 -15 -14 -13 -10 -7 -2 1 2 1 -3 -7 -10 -11 -10 -9 -9 -10 -11 -13 -14 -14 -14 -15 -16 -19 -20 -20 -21 -21 -22 -22 -21 -20 -20 -19 -18 -18 -17 -17 -17 -17 -17 -17 -16 -16 -16 -16 -16 -16 -16 -16 -16 -17 -17 -17 -17 -17 -17 -16 -16 -16 -16 -16 -16 -16 -17 -16 -16 -16 -16 -16 -16 -16 -16 -16 -17 -17 -17 -18 -19 -19 -20 -20 -20 -20 -20 -20 -21 -22 -24 -26 -27 -29 -29 -28 -27 -26 -26 -26 -26 -27 -28 -29 -28 -27 -26 -26 -25 -25 -23 -21 -21 -21 -23 -23 -23 -21 -20 -20 -20 -20 -20 -20 -20 -19 -19 -19 -20 -20 -21 -21 -21 -20 -19 -19 -20 -21 -21 -21 -21 -20 -20 -21 -21 -21 -21 -21 -21 -22 -23 -24 -24 -24 -24 -23 -23 -23 -24 -24 -25 -25 -24 -24 -23 -24 -25 -26 -27 -27 -27 -25 -25 -25 -26 -27 -27 -27 -28 -29 -30 -31 -30 -29 -29 -29 -29 -29 -29 -30 -30 -30 -30 -29 -29 -28 -28 -28 -27 -27 -26 -26 -26 -27 -27 -26 -25 -24 -23 -22 -21 -21 -19 -18 -18 -18 -19 -20 -21 -21 -22 -22 -21 -21 -21 -21 -21 -21 -20 -20 -21 -22 -22 -22 -22 -22 -22 -22 -22 -22 -21 -20 -19 -18 -18 -17 -16 -16 -15 -15 -15 -15 -14 -13 -12 -11 -10 -10 -9 -9 -9 -8 -8 -8 -8 -7 -7 -6 -6 -6 -5 -5 -5 -4 -4 -4 -3 -3 -3 -3 -3 -2 -2 -2 -1 -1 -1 -0 0 0 1 1 1 2 2 3 3 3 3 3 4 4 -20 -14 -8 -7 -12 -20 -27 -29 -27 -22 -18 -15 -15 -17 -17 -13 -8 -5 -4 -7 -12 -14 -15 -17 -19 -21 -19 -17 -18 -20 -22 -23 -22 -21 -20 -19 -17 -16 -16 -16 -16 -17 -17 -18 -20 -22 -24 -24 -21 -18 -16 -15 -16 -16 -15 -14 -14 -15 -16 -17 -16 -16 -15 -16 -16 -17 -16 -14 -11 -7 -4 -2 -2 -2 -2 -1 -2 -3 -5 -7 -7 -9 -10 -9 -5 -3 -1 1 1 -2 -5 -5 -3 -3 -2 -1 -1 -3 -7 -11 -14 -16 -17 -17 -18 -17 -17 -16 -16 -15 -16 -16 -15 -15 -13 -11 -6 -1 2 1 -2 -8 -11 -12 -12 -12 -11 -12 -13 -14 -15 -14 -14 -16 -18 -21 -22 -22 -22 -23 -23 -23 -22 -21 -21 -20 -19 -19 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -17 -17 -17 -17 -17 -17 -17 -18 -17 -17 -17 -17 -16 -16 -16 -16 -16 -17 -17 -17 -17 -17 -17 -17 -17 -17 -17 -17 -17 -17 -18 -18 -19 -20 -20 -20 -20 -20 -20 -21 -22 -23 -24 -26 -27 -28 -28 -28 -27 -27 -26 -26 -27 -28 -29 -30 -28 -27 -27 -26 -26 -25 -23 -22 -22 -23 -24 -24 -23 -22 -21 -21 -21 -20 -20 -20 -19 -19 -19 -19 -20 -20 -21 -21 -21 -21 -21 -21 -22 -23 -23 -22 -22 -22 -22 -22 -22 -22 -21 -21 -22 -22 -23 -24 -24 -24 -24 -24 -25 -25 -26 -27 -26 -25 -25 -24 -25 -26 -27 -28 -28 -27 -26 -26 -27 -27 -28 -28 -28 -29 -30 -31 -32 -31 -31 -30 -30 -30 -30 -30 -29 -30 -30 -30 -30 -29 -29 -29 -29 -28 -28 -27 -27 -26 -26 -27 -26 -26 -25 -24 -24 -23 -23 -21 -20 -19 -18 -18 -18 -20 -21 -21 -22 -22 -22 -23 -23 -23 -23 -22 -21 -21 -22 -22 -23 -23 -23 -23 -22 -22 -22 -22 -22 -21 -20 -19 -19 -18 -17 -17 -16 -16 -16 -16 -15 -14 -13 -13 -12 -11 -10 -10 -10 -9 -9 -9 -8 -8 -7 -7 -6 -6 -6 -6 -5 -5 -4 -4 -4 -3 -3 -3 -3 -2 -2 -2 -2 -1 -1 -1 -1 -0 -0 -0 0 1 1 2 2 3 3 3 4 4 -22 -18 -10 -5 -9 -17 -25 -29 -29 -26 -21 -18 -16 -18 -18 -15 -10 -6 -5 -8 -13 -15 -15 -16 -18 -20 -19 -17 -17 -18 -21 -23 -22 -22 -21 -19 -18 -17 -17 -16 -16 -16 -16 -16 -17 -19 -21 -23 -24 -23 -21 -19 -17 -16 -14 -13 -13 -14 -15 -16 -16 -16 -16 -16 -16 -17 -18 -18 -17 -14 -11 -9 -8 -7 -6 -5 -5 -4 -4 -5 -7 -10 -11 -10 -7 -3 -0 2 1 -2 -4 -5 -4 -4 -4 -3 -5 -7 -10 -13 -16 -17 -18 -19 -19 -19 -18 -17 -16 -16 -16 -16 -17 -17 -16 -14 -10 -4 -0 0 -3 -8 -11 -13 -13 -13 -14 -15 -16 -17 -16 -15 -15 -17 -20 -22 -23 -23 -24 -25 -24 -24 -23 -22 -22 -21 -20 -19 -19 -19 -20 -20 -20 -19 -20 -20 -20 -19 -19 -18 -18 -18 -18 -18 -18 -18 -18 -18 -17 -17 -17 -17 -17 -17 -17 -17 -18 -18 -18 -18 -17 -17 -17 -18 -18 -18 -18 -18 -18 -18 -19 -20 -21 -20 -20 -20 -20 -21 -22 -23 -24 -25 -26 -27 -28 -28 -28 -27 -27 -27 -28 -29 -30 -30 -29 -28 -27 -27 -27 -26 -24 -24 -24 -25 -26 -25 -23 -22 -22 -21 -21 -20 -19 -19 -19 -19 -19 -19 -19 -20 -20 -21 -21 -22 -23 -24 -24 -24 -24 -23 -23 -23 -24 -23 -23 -22 -22 -22 -23 -23 -24 -24 -24 -24 -24 -25 -26 -28 -28 -28 -27 -26 -26 -26 -26 -27 -28 -28 -28 -27 -27 -28 -29 -29 -29 -29 -29 -30 -31 -32 -32 -32 -31 -31 -31 -31 -30 -30 -30 -30 -30 -30 -29 -29 -29 -29 -29 -29 -28 -28 -27 -27 -26 -26 -26 -26 -25 -25 -25 -24 -24 -22 -20 -19 -18 -18 -18 -19 -20 -21 -22 -22 -23 -24 -24 -24 -24 -23 -22 -22 -22 -22 -23 -24 -24 -23 -23 -22 -22 -22 -22 -22 -21 -20 -20 -19 -18 -18 -18 -17 -17 -17 -17 -16 -15 -14 -13 -13 -12 -11 -10 -10 -10 -9 -9 -8 -8 -7 -7 -7 -7 -6 -5 -5 -4 -4 -4 -3 -3 -3 -3 -2 -2 -2 -2 -1 -1 -1 -1 -1 -1 -1 -1 -0 0 1 1 2 2 3 4 4 -19 -18 -11 -5 -8 -15 -21 -24 -25 -24 -21 -18 -17 -19 -19 -17 -12 -7 -6 -8 -13 -16 -16 -16 -16 -18 -18 -16 -15 -16 -19 -21 -21 -21 -21 -20 -19 -18 -18 -17 -17 -16 -16 -15 -15 -16 -18 -20 -23 -25 -25 -23 -20 -17 -15 -13 -13 -14 -15 -16 -16 -16 -17 -17 -17 -17 -18 -19 -19 -19 -17 -15 -14 -13 -13 -12 -10 -7 -5 -5 -7 -10 -11 -10 -7 -4 -1 1 2 -0 -3 -6 -7 -5 -5 -4 -6 -9 -11 -14 -16 -18 -19 -20 -20 -20 -19 -17 -16 -15 -15 -16 -17 -18 -18 -17 -13 -8 -4 -3 -5 -8 -11 -12 -13 -15 -17 -19 -20 -19 -18 -17 -17 -19 -21 -23 -24 -25 -26 -26 -25 -25 -24 -23 -23 -22 -21 -21 -21 -21 -21 -21 -21 -21 -21 -22 -21 -21 -20 -19 -19 -19 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -17 -17 -18 -19 -20 -20 -19 -18 -18 -18 -19 -19 -19 -18 -18 -18 -19 -20 -21 -21 -21 -20 -20 -20 -21 -23 -24 -25 -25 -27 -28 -28 -29 -28 -27 -26 -27 -28 -30 -31 -31 -29 -28 -28 -28 -28 -27 -26 -26 -27 -27 -27 -26 -24 -23 -23 -22 -21 -20 -19 -19 -19 -20 -20 -19 -20 -20 -21 -21 -22 -23 -24 -25 -25 -25 -24 -24 -24 -24 -24 -24 -23 -23 -23 -23 -24 -24 -24 -23 -23 -23 -24 -25 -27 -28 -29 -29 -28 -28 -27 -28 -28 -28 -28 -28 -28 -28 -29 -30 -30 -30 -29 -29 -29 -30 -31 -32 -32 -32 -32 -31 -31 -31 -30 -30 -30 -30 -30 -30 -29 -28 -29 -29 -29 -29 -29 -28 -27 -27 -26 -26 -25 -25 -25 -25 -25 -25 -24 -23 -21 -20 -18 -18 -18 -18 -20 -21 -22 -23 -23 -24 -25 -25 -25 -24 -23 -23 -23 -23 -23 -24 -24 -23 -23 -22 -22 -22 -22 -22 -22 -21 -20 -19 -19 -19 -19 -18 -18 -18 -18 -18 -17 -16 -15 -14 -13 -12 -12 -11 -10 -10 -9 -9 -8 -8 -8 -8 -7 -7 -6 -5 -5 -4 -4 -3 -3 -3 -2 -2 -2 -2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -0 0 1 1 2 3 4 4 -23 -21 -18 -10 -8 -11 -16 -21 -23 -23 -20 -17 -17 -19 -21 -19 -14 -9 -6 -8 -13 -17 -18 -17 -16 -17 -17 -16 -15 -14 -15 -17 -19 -20 -20 -20 -19 -19 -19 -18 -18 -17 -16 -15 -15 -15 -15 -16 -19 -23 -25 -26 -23 -20 -16 -15 -15 -16 -17 -17 -17 -16 -16 -17 -17 -17 -17 -18 -19 -20 -20 -19 -19 -19 -19 -18 -17 -14 -10 -9 -9 -10 -10 -9 -8 -6 -3 1 2 1 -2 -5 -6 -4 -5 -5 -6 -8 -11 -14 -16 -18 -19 -20 -21 -21 -20 -18 -16 -15 -15 -16 -17 -18 -19 -18 -15 -12 -9 -7 -7 -8 -10 -12 -15 -18 -20 -23 -23 -21 -20 -19 -20 -21 -22 -24 -25 -26 -27 -27 -26 -26 -25 -25 -24 -23 -22 -22 -23 -23 -23 -23 -22 -23 -23 -23 -23 -22 -21 -21 -20 -20 -19 -19 -19 -19 -19 -19 -19 -19 -20 -19 -19 -18 -18 -19 -20 -21 -21 -20 -20 -19 -20 -20 -20 -20 -19 -19 -19 -20 -21 -22 -22 -21 -21 -20 -21 -22 -23 -24 -25 -26 -27 -29 -29 -29 -28 -27 -27 -28 -29 -31 -32 -31 -29 -29 -29 -29 -29 -28 -28 -28 -29 -29 -28 -27 -26 -25 -24 -23 -21 -20 -20 -20 -20 -20 -20 -20 -20 -20 -21 -22 -23 -24 -25 -25 -25 -25 -24 -24 -23 -23 -23 -23 -23 -23 -23 -24 -25 -24 -23 -23 -22 -22 -23 -25 -27 -28 -29 -29 -29 -29 -29 -29 -30 -29 -29 -29 -29 -30 -30 -31 -30 -30 -29 -29 -30 -31 -31 -32 -32 -31 -31 -31 -31 -31 -31 -31 -31 -31 -30 -29 -28 -28 -29 -29 -29 -29 -29 -28 -28 -27 -26 -26 -25 -25 -25 -26 -26 -26 -25 -24 -22 -21 -19 -18 -18 -18 -19 -20 -22 -23 -24 -25 -26 -26 -26 -25 -25 -24 -23 -23 -23 -23 -23 -23 -23 -22 -22 -22 -22 -22 -22 -21 -20 -20 -19 -19 -19 -19 -19 -20 -20 -19 -18 -17 -16 -15 -15 -14 -13 -12 -11 -10 -10 -9 -9 -9 -9 -8 -8 -7 -7 -6 -6 -5 -4 -4 -3 -3 -2 -2 -2 -1 -1 -0 -0 -0 -0 -0 -0 -0 -0 -1 -1 -1 -0 1 2 3 3 4 -26 -24 -21 -16 -12 -12 -15 -20 -22 -22 -20 -17 -16 -18 -21 -21 -18 -13 -9 -8 -13 -18 -20 -19 -18 -18 -19 -18 -16 -14 -13 -14 -16 -18 -19 -20 -19 -19 -18 -18 -18 -17 -17 -16 -16 -15 -15 -15 -16 -18 -22 -24 -25 -23 -19 -17 -17 -19 -20 -20 -18 -15 -14 -15 -16 -17 -17 -17 -17 -18 -19 -21 -22 -23 -24 -24 -23 -22 -19 -17 -15 -13 -11 -11 -10 -9 -6 -3 -1 -2 -3 -5 -5 -4 -4 -5 -7 -9 -11 -14 -17 -19 -20 -21 -21 -21 -20 -19 -17 -16 -15 -16 -17 -18 -18 -18 -17 -16 -15 -12 -10 -10 -11 -14 -17 -21 -23 -24 -24 -23 -22 -21 -21 -22 -24 -25 -26 -27 -28 -28 -28 -27 -27 -26 -25 -25 -24 -24 -25 -25 -25 -24 -24 -24 -24 -25 -24 -24 -23 -22 -22 -21 -21 -21 -20 -20 -20 -20 -20 -21 -21 -21 -20 -18 -18 -20 -21 -22 -22 -21 -21 -21 -21 -21 -21 -20 -20 -20 -21 -22 -23 -23 -23 -22 -21 -21 -22 -23 -24 -25 -26 -27 -29 -30 -30 -29 -27 -27 -28 -29 -30 -31 -32 -31 -30 -29 -29 -30 -29 -29 -30 -30 -31 -30 -29 -28 -27 -26 -25 -24 -22 -21 -21 -21 -22 -22 -21 -21 -21 -21 -22 -23 -24 -25 -25 -25 -25 -25 -24 -24 -23 -23 -23 -23 -23 -23 -24 -24 -25 -24 -22 -21 -21 -21 -23 -24 -26 -27 -28 -28 -29 -29 -30 -31 -31 -30 -30 -30 -31 -31 -31 -31 -30 -30 -30 -30 -31 -31 -32 -32 -31 -31 -31 -31 -32 -32 -32 -31 -31 -31 -30 -29 -28 -29 -29 -30 -30 -29 -29 -28 -28 -27 -27 -26 -25 -25 -25 -26 -26 -26 -26 -25 -23 -22 -20 -19 -18 -18 -19 -20 -22 -23 -24 -25 -26 -27 -27 -26 -26 -26 -25 -24 -24 -24 -23 -23 -23 -22 -22 -22 -21 -22 -22 -22 -21 -20 -20 -19 -19 -20 -20 -21 -21 -21 -20 -18 -17 -17 -17 -16 -15 -14 -13 -12 -11 -10 -10 -10 -9 -9 -9 -8 -8 -7 -7 -6 -5 -5 -4 -3 -3 -2 -1 -1 -0 0 0 0 0 0 0 0 -0 -1 -1 -1 -0 0 1 2 3 4 -28 -25 -21 -17 -13 -13 -15 -19 -21 -20 -18 -16 -16 -18 -21 -23 -21 -17 -12 -9 -12 -18 -21 -21 -20 -19 -20 -20 -19 -16 -13 -12 -14 -16 -18 -18 -18 -18 -17 -17 -17 -18 -18 -18 -18 -17 -17 -16 -16 -17 -20 -22 -24 -24 -21 -19 -20 -21 -23 -22 -19 -16 -14 -14 -15 -17 -17 -17 -16 -16 -17 -20 -23 -25 -26 -28 -28 -27 -25 -23 -20 -18 -16 -15 -12 -9 -7 -6 -6 -5 -4 -5 -5 -4 -3 -4 -5 -7 -12 -14 -17 -20 -21 -22 -23 -23 -22 -21 -20 -18 -17 -16 -16 -17 -17 -18 -19 -19 -19 -17 -16 -15 -16 -18 -20 -23 -24 -25 -26 -25 -24 -23 -23 -24 -25 -27 -28 -29 -29 -30 -30 -29 -28 -28 -27 -26 -26 -27 -27 -27 -27 -26 -25 -26 -26 -26 -26 -25 -25 -25 -24 -24 -23 -23 -22 -21 -21 -21 -22 -22 -23 -22 -21 -19 -19 -20 -22 -23 -23 -22 -22 -22 -22 -22 -22 -21 -21 -21 -22 -23 -24 -24 -23 -23 -22 -22 -23 -23 -24 -26 -27 -29 -30 -30 -30 -28 -27 -28 -29 -30 -31 -31 -32 -31 -30 -30 -30 -30 -30 -30 -31 -31 -32 -31 -30 -30 -29 -28 -26 -25 -24 -23 -23 -23 -24 -23 -22 -22 -22 -23 -23 -24 -24 -25 -25 -25 -25 -25 -24 -24 -24 -24 -24 -23 -23 -23 -24 -24 -24 -23 -21 -20 -20 -21 -22 -23 -25 -26 -26 -27 -29 -30 -31 -31 -32 -32 -32 -32 -32 -32 -31 -31 -31 -31 -31 -31 -32 -32 -32 -32 -31 -31 -31 -32 -32 -32 -32 -32 -31 -30 -30 -29 -29 -29 -30 -30 -29 -29 -29 -29 -28 -28 -27 -27 -26 -26 -26 -26 -26 -27 -26 -26 -24 -23 -22 -20 -19 -19 -19 -20 -22 -23 -24 -25 -26 -27 -27 -27 -28 -27 -27 -26 -25 -24 -24 -23 -23 -23 -22 -22 -21 -22 -22 -22 -21 -21 -20 -20 -20 -20 -21 -22 -22 -22 -21 -20 -19 -19 -19 -18 -18 -16 -15 -14 -12 -11 -11 -10 -10 -10 -10 -9 -9 -8 -8 -7 -7 -6 -5 -4 -3 -2 -1 -0 0 0 0 0 0 0 0 0 -0 -1 -1 -1 -0 0 1 2 3 4 -31 -28 -23 -17 -13 -12 -15 -18 -20 -18 -16 -14 -14 -17 -20 -23 -24 -21 -16 -12 -12 -17 -21 -22 -21 -20 -21 -22 -22 -19 -16 -13 -12 -14 -16 -17 -17 -17 -16 -16 -17 -18 -19 -19 -19 -19 -18 -18 -18 -18 -20 -22 -23 -24 -23 -22 -21 -22 -24 -23 -20 -18 -16 -15 -15 -16 -16 -17 -16 -16 -16 -19 -23 -26 -28 -30 -30 -30 -29 -28 -27 -24 -21 -17 -13 -9 -6 -6 -8 -8 -7 -6 -5 -4 -3 -4 -5 -7 -11 -15 -18 -21 -23 -24 -25 -26 -26 -25 -24 -22 -20 -17 -16 -16 -17 -18 -20 -21 -22 -22 -22 -21 -21 -21 -22 -24 -25 -26 -27 -26 -26 -25 -26 -26 -27 -28 -29 -30 -31 -31 -31 -31 -30 -29 -28 -28 -29 -29 -30 -30 -29 -28 -27 -27 -27 -27 -27 -27 -27 -27 -27 -26 -26 -25 -24 -23 -22 -23 -24 -24 -24 -23 -22 -21 -20 -21 -22 -23 -24 -23 -23 -23 -23 -23 -23 -22 -22 -23 -23 -24 -25 -25 -24 -24 -23 -23 -24 -24 -25 -27 -28 -30 -31 -30 -29 -28 -28 -29 -30 -30 -31 -31 -31 -31 -31 -30 -30 -30 -31 -31 -32 -32 -32 -32 -31 -31 -30 -29 -28 -27 -26 -25 -25 -26 -26 -25 -24 -24 -24 -24 -24 -24 -24 -24 -25 -25 -25 -25 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -23 -23 -22 -21 -21 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -31 -32 -32 -32 -32 -32 -32 -32 -32 -32 -32 -32 -32 -33 -32 -32 -31 -31 -31 -32 -32 -32 -32 -31 -31 -30 -30 -29 -30 -30 -30 -29 -29 -29 -29 -29 -29 -29 -28 -27 -27 -26 -26 -26 -26 -27 -27 -26 -25 -24 -23 -21 -20 -20 -20 -21 -22 -23 -24 -25 -26 -27 -27 -28 -28 -28 -28 -27 -26 -26 -25 -24 -23 -23 -22 -22 -22 -22 -22 -22 -22 -21 -21 -21 -21 -22 -22 -22 -22 -22 -22 -21 -21 -20 -20 -20 -20 -19 -17 -16 -15 -13 -12 -11 -11 -10 -10 -10 -9 -9 -9 -8 -8 -7 -6 -5 -4 -2 -1 -1 -1 -1 -0 -0 0 0 -0 -0 -0 -0 -0 -0 0 0 1 2 3 3 -33 -32 -26 -18 -12 -11 -13 -17 -18 -17 -15 -14 -15 -17 -20 -23 -26 -25 -21 -15 -12 -15 -20 -22 -21 -19 -20 -22 -23 -22 -20 -16 -13 -13 -14 -15 -16 -16 -16 -16 -16 -17 -18 -20 -20 -20 -20 -20 -20 -20 -21 -22 -23 -23 -24 -23 -23 -23 -24 -23 -22 -20 -19 -18 -17 -16 -15 -15 -15 -16 -17 -19 -24 -27 -30 -31 -31 -31 -31 -31 -31 -30 -26 -21 -15 -10 -7 -6 -8 -9 -9 -8 -6 -5 -5 -6 -7 -9 -12 -16 -19 -23 -25 -27 -28 -29 -29 -29 -28 -26 -23 -20 -18 -17 -17 -19 -21 -23 -25 -26 -26 -25 -25 -24 -24 -25 -26 -27 -27 -27 -27 -27 -28 -29 -30 -30 -31 -32 -32 -33 -33 -32 -31 -30 -30 -30 -31 -32 -32 -32 -31 -30 -29 -29 -29 -29 -29 -29 -29 -29 -29 -29 -28 -27 -26 -25 -24 -25 -26 -26 -26 -25 -23 -22 -22 -22 -23 -24 -25 -24 -24 -24 -24 -24 -24 -23 -23 -24 -24 -25 -26 -26 -25 -25 -24 -25 -25 -26 -27 -28 -29 -30 -30 -29 -28 -28 -28 -29 -30 -30 -30 -30 -31 -31 -31 -31 -30 -30 -30 -31 -31 -32 -32 -32 -31 -31 -31 -31 -30 -29 -28 -28 -28 -28 -27 -26 -25 -25 -25 -25 -24 -24 -24 -25 -25 -25 -25 -25 -25 -25 -25 -24 -24 -24 -24 -24 -24 -24 -24 -23 -23 -22 -22 -22 -23 -23 -23 -24 -25 -26 -27 -28 -28 -28 -29 -30 -31 -31 -32 -32 -32 -33 -33 -33 -33 -33 -33 -33 -32 -32 -32 -32 -32 -32 -32 -32 -32 -31 -30 -30 -30 -30 -31 -30 -30 -29 -28 -29 -29 -30 -29 -29 -29 -28 -27 -27 -26 -26 -26 -26 -27 -27 -26 -25 -24 -23 -21 -21 -21 -21 -22 -23 -24 -25 -25 -26 -27 -28 -28 -28 -28 -28 -27 -27 -25 -24 -23 -23 -23 -23 -22 -22 -22 -22 -22 -22 -22 -22 -23 -23 -23 -23 -22 -22 -22 -22 -22 -22 -22 -22 -21 -20 -20 -19 -17 -16 -14 -13 -12 -11 -10 -10 -9 -9 -9 -9 -8 -7 -6 -5 -4 -4 -3 -3 -3 -2 -1 -1 -1 -1 -1 -1 -0 -0 -0 0 0 1 1 2 2 2 -33 -33 -29 -21 -11 -8 -10 -15 -17 -16 -15 -14 -15 -17 -19 -23 -26 -27 -24 -17 -11 -12 -16 -19 -20 -19 -19 -20 -22 -23 -22 -20 -16 -14 -13 -14 -15 -15 -15 -15 -16 -16 -17 -19 -20 -20 -21 -21 -21 -21 -22 -22 -22 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -22 -21 -19 -16 -15 -15 -16 -17 -20 -24 -27 -29 -31 -31 -31 -32 -33 -33 -32 -30 -25 -19 -14 -9 -7 -8 -9 -10 -8 -7 -6 -7 -8 -9 -10 -12 -17 -21 -25 -28 -31 -32 -32 -32 -32 -31 -30 -27 -24 -20 -18 -18 -19 -22 -24 -27 -28 -29 -28 -28 -27 -27 -27 -27 -27 -28 -28 -29 -30 -30 -31 -32 -33 -33 -34 -34 -34 -34 -34 -33 -32 -32 -32 -33 -34 -34 -34 -33 -32 -31 -31 -31 -31 -31 -31 -31 -31 -31 -31 -30 -29 -28 -27 -27 -28 -29 -29 -28 -26 -25 -24 -23 -24 -25 -26 -26 -26 -26 -26 -25 -25 -24 -24 -24 -25 -26 -26 -27 -27 -26 -26 -26 -26 -26 -27 -27 -28 -29 -29 -29 -28 -28 -28 -28 -29 -29 -29 -29 -30 -31 -31 -31 -30 -30 -29 -30 -30 -31 -31 -31 -32 -32 -32 -32 -32 -32 -31 -30 -30 -30 -29 -29 -28 -27 -26 -26 -25 -25 -25 -25 -25 -25 -25 -25 -25 -25 -25 -25 -25 -24 -24 -24 -24 -24 -24 -24 -25 -25 -24 -24 -24 -24 -24 -24 -24 -25 -25 -25 -25 -25 -25 -26 -27 -28 -29 -30 -30 -31 -32 -32 -33 -33 -33 -33 -33 -33 -32 -32 -32 -32 -32 -32 -32 -31 -30 -30 -30 -30 -31 -31 -30 -29 -29 -29 -29 -29 -29 -29 -29 -29 -28 -28 -27 -27 -26 -26 -26 -26 -26 -26 -26 -25 -23 -22 -22 -21 -21 -22 -22 -23 -24 -25 -26 -26 -27 -27 -28 -28 -28 -28 -27 -26 -24 -23 -23 -23 -23 -23 -22 -22 -22 -21 -22 -23 -24 -24 -24 -24 -23 -23 -22 -22 -22 -22 -22 -22 -22 -22 -22 -21 -21 -20 -18 -17 -15 -13 -12 -11 -10 -10 -9 -9 -9 -8 -8 -7 -6 -6 -6 -5 -5 -4 -3 -2 -2 -2 -2 -1 -1 -0 0 0 0 1 1 1 1 1 1 -33 -34 -32 -27 -15 -8 -8 -12 -16 -16 -16 -15 -15 -16 -18 -22 -26 -28 -26 -21 -14 -11 -13 -17 -20 -19 -18 -18 -20 -21 -22 -22 -19 -16 -14 -14 -14 -15 -16 -16 -15 -15 -15 -16 -17 -19 -20 -21 -22 -22 -22 -22 -22 -22 -22 -23 -23 -22 -23 -23 -24 -25 -26 -26 -25 -23 -20 -18 -17 -16 -18 -20 -23 -26 -29 -30 -31 -32 -32 -32 -33 -32 -30 -26 -22 -18 -14 -11 -10 -9 -9 -7 -7 -8 -9 -9 -9 -10 -13 -17 -23 -27 -31 -34 -35 -35 -35 -35 -34 -32 -30 -27 -23 -21 -19 -20 -22 -25 -27 -29 -30 -31 -31 -31 -30 -29 -28 -27 -28 -29 -30 -32 -33 -34 -34 -35 -36 -36 -37 -37 -36 -36 -35 -34 -34 -34 -35 -35 -35 -35 -34 -34 -34 -33 -33 -33 -33 -33 -33 -33 -33 -33 -32 -31 -30 -30 -30 -31 -31 -31 -29 -28 -26 -26 -26 -27 -28 -29 -29 -28 -28 -27 -27 -26 -25 -25 -25 -26 -27 -28 -28 -27 -27 -27 -27 -27 -27 -28 -28 -28 -28 -28 -28 -28 -27 -28 -28 -28 -28 -28 -28 -30 -31 -31 -31 -30 -29 -29 -29 -30 -31 -31 -32 -32 -32 -33 -33 -34 -33 -32 -32 -31 -31 -31 -30 -29 -28 -27 -26 -26 -25 -25 -25 -25 -25 -25 -25 -25 -25 -25 -24 -24 -24 -24 -24 -24 -24 -25 -26 -26 -27 -26 -26 -26 -25 -24 -24 -24 -24 -24 -24 -23 -22 -22 -23 -24 -25 -26 -26 -27 -28 -30 -31 -32 -33 -33 -32 -32 -32 -32 -32 -32 -32 -33 -32 -32 -31 -30 -30 -30 -31 -31 -31 -30 -29 -29 -29 -29 -29 -29 -29 -29 -29 -28 -28 -27 -27 -26 -26 -25 -25 -26 -26 -25 -25 -24 -23 -22 -22 -22 -22 -22 -23 -24 -25 -25 -26 -26 -27 -27 -27 -27 -28 -27 -26 -24 -23 -22 -22 -22 -22 -22 -22 -21 -21 -22 -23 -25 -25 -25 -25 -24 -23 -22 -22 -22 -22 -22 -22 -22 -22 -23 -23 -23 -22 -21 -20 -18 -16 -15 -14 -13 -12 -11 -10 -9 -8 -8 -8 -8 -7 -7 -6 -5 -4 -3 -3 -3 -2 -2 -1 -0 -0 0 0 1 1 1 1 1 1 1 -31 -34 -35 -31 -21 -11 -7 -10 -15 -18 -18 -16 -15 -15 -17 -20 -24 -27 -27 -24 -17 -12 -12 -15 -18 -19 -18 -17 -18 -19 -20 -21 -20 -18 -16 -14 -14 -15 -16 -16 -16 -15 -15 -14 -15 -15 -17 -18 -19 -20 -20 -20 -21 -21 -21 -22 -22 -22 -22 -23 -24 -27 -28 -29 -29 -28 -26 -23 -21 -19 -19 -20 -23 -26 -28 -30 -31 -32 -32 -32 -32 -31 -28 -25 -22 -19 -17 -15 -13 -11 -9 -8 -8 -10 -12 -12 -12 -13 -15 -19 -24 -28 -32 -36 -37 -37 -37 -36 -35 -34 -32 -29 -26 -23 -21 -20 -22 -24 -27 -29 -31 -32 -34 -34 -33 -31 -30 -29 -29 -30 -32 -33 -35 -36 -37 -38 -39 -39 -39 -39 -38 -38 -37 -37 -37 -37 -37 -37 -37 -36 -36 -36 -35 -35 -35 -35 -35 -35 -35 -35 -35 -35 -34 -33 -33 -33 -33 -34 -33 -33 -31 -30 -28 -28 -28 -29 -30 -31 -31 -30 -29 -29 -28 -27 -26 -26 -27 -27 -28 -29 -29 -28 -28 -28 -28 -28 -28 -28 -28 -28 -28 -28 -28 -27 -27 -27 -27 -27 -27 -27 -28 -29 -30 -31 -30 -30 -29 -29 -29 -30 -31 -32 -32 -33 -33 -34 -34 -34 -34 -33 -32 -32 -32 -32 -31 -30 -29 -28 -27 -27 -26 -26 -26 -25 -25 -25 -25 -25 -24 -24 -24 -24 -23 -23 -24 -24 -24 -25 -26 -27 -28 -28 -27 -27 -26 -25 -25 -25 -24 -24 -23 -22 -21 -22 -22 -23 -23 -23 -23 -24 -25 -27 -28 -29 -30 -31 -31 -31 -32 -32 -32 -32 -32 -33 -33 -32 -31 -30 -30 -30 -31 -31 -31 -30 -30 -30 -30 -30 -29 -29 -28 -28 -28 -28 -28 -27 -27 -26 -25 -25 -25 -25 -25 -25 -24 -24 -23 -22 -22 -22 -22 -22 -23 -24 -24 -25 -26 -26 -26 -26 -27 -27 -27 -27 -26 -24 -23 -22 -21 -21 -21 -21 -21 -21 -21 -22 -23 -25 -26 -26 -26 -25 -24 -23 -22 -22 -22 -22 -22 -22 -23 -23 -23 -23 -23 -23 -22 -21 -20 -19 -17 -16 -14 -13 -12 -11 -10 -10 -9 -9 -8 -7 -6 -5 -4 -3 -3 -3 -2 -1 -0 0 0 0 1 1 1 1 1 1 2 2 -27 -31 -33 -33 -25 -14 -7 -6 -11 -18 -19 -17 -16 -15 -17 -19 -22 -25 -26 -25 -21 -15 -12 -13 -16 -18 -18 -17 -16 -16 -17 -19 -19 -18 -17 -15 -14 -14 -15 -16 -17 -16 -15 -14 -13 -13 -13 -14 -15 -15 -16 -17 -18 -19 -20 -20 -21 -21 -22 -22 -24 -26 -28 -30 -31 -32 -33 -31 -28 -24 -22 -21 -22 -24 -26 -28 -29 -31 -31 -31 -30 -28 -25 -22 -20 -18 -18 -16 -14 -12 -10 -9 -9 -10 -12 -12 -12 -13 -15 -16 -22 -27 -32 -36 -38 -38 -38 -37 -36 -35 -33 -31 -28 -25 -22 -21 -21 -23 -26 -29 -32 -34 -36 -37 -36 -35 -33 -31 -30 -31 -32 -34 -36 -38 -40 -41 -41 -42 -41 -41 -40 -40 -40 -40 -40 -40 -40 -39 -39 -38 -37 -37 -36 -36 -36 -36 -37 -37 -37 -38 -37 -37 -36 -35 -35 -35 -35 -35 -35 -34 -33 -31 -30 -30 -30 -31 -32 -33 -33 -32 -31 -30 -29 -28 -28 -28 -28 -29 -30 -30 -29 -29 -28 -28 -29 -29 -29 -28 -28 -28 -28 -28 -28 -28 -28 -27 -27 -27 -27 -27 -27 -28 -30 -30 -30 -30 -29 -29 -30 -31 -32 -32 -33 -33 -33 -34 -34 -34 -34 -33 -32 -32 -32 -32 -32 -31 -30 -29 -28 -27 -27 -26 -26 -26 -25 -25 -25 -24 -24 -24 -23 -23 -23 -23 -23 -24 -24 -25 -26 -27 -28 -28 -27 -27 -26 -26 -25 -25 -25 -24 -23 -22 -22 -22 -22 -22 -22 -21 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -30 -31 -31 -32 -32 -32 -32 -32 -31 -30 -30 -30 -31 -30 -30 -30 -30 -30 -30 -30 -30 -29 -28 -28 -28 -27 -27 -27 -26 -26 -25 -25 -24 -24 -24 -23 -23 -23 -23 -22 -22 -21 -22 -22 -23 -23 -24 -25 -25 -26 -26 -26 -27 -27 -27 -26 -25 -24 -23 -22 -21 -20 -20 -20 -19 -19 -20 -21 -22 -24 -25 -27 -27 -27 -26 -24 -23 -22 -22 -22 -22 -22 -22 -23 -23 -23 -24 -24 -24 -23 -23 -22 -21 -20 -18 -16 -15 -14 -13 -12 -11 -10 -8 -7 -5 -4 -4 -4 -4 -3 -2 -1 -0 -0 -0 0 1 1 1 2 2 3 4 5 -23 -27 -31 -33 -30 -22 -14 -9 -10 -16 -19 -18 -16 -16 -17 -19 -21 -23 -25 -25 -23 -18 -13 -12 -13 -17 -18 -17 -15 -14 -15 -16 -17 -17 -17 -16 -14 -13 -14 -15 -16 -17 -17 -16 -15 -13 -11 -10 -10 -10 -11 -13 -14 -15 -16 -18 -19 -20 -21 -22 -23 -24 -27 -29 -31 -34 -35 -36 -35 -33 -29 -26 -24 -24 -24 -25 -25 -26 -27 -26 -25 -23 -20 -19 -18 -16 -15 -13 -12 -11 -10 -10 -9 -9 -11 -13 -15 -15 -17 -17 -21 -26 -30 -34 -37 -38 -38 -37 -36 -35 -33 -31 -28 -25 -23 -21 -21 -22 -25 -28 -31 -34 -37 -38 -39 -38 -35 -33 -32 -32 -33 -35 -38 -40 -42 -43 -44 -44 -43 -42 -42 -42 -42 -42 -43 -43 -42 -42 -41 -40 -39 -38 -37 -37 -37 -37 -38 -38 -39 -39 -40 -39 -38 -37 -37 -37 -37 -37 -36 -35 -34 -32 -31 -31 -31 -32 -33 -34 -34 -33 -32 -31 -30 -30 -30 -30 -30 -31 -31 -31 -30 -30 -29 -29 -30 -30 -29 -29 -28 -28 -29 -29 -29 -29 -28 -28 -27 -27 -27 -27 -27 -28 -29 -30 -31 -30 -30 -30 -31 -31 -32 -32 -33 -33 -33 -33 -33 -33 -33 -32 -32 -32 -32 -32 -32 -31 -31 -30 -29 -28 -27 -26 -26 -26 -25 -25 -25 -24 -24 -24 -23 -23 -23 -23 -23 -23 -24 -25 -26 -26 -27 -27 -26 -26 -26 -26 -26 -25 -25 -24 -23 -23 -23 -23 -22 -22 -21 -21 -21 -21 -22 -23 -23 -24 -25 -26 -27 -28 -29 -29 -30 -30 -31 -32 -32 -31 -31 -30 -30 -30 -30 -29 -29 -29 -29 -30 -31 -31 -30 -30 -29 -28 -28 -27 -27 -26 -26 -26 -25 -25 -24 -24 -23 -23 -23 -22 -22 -22 -22 -21 -21 -22 -22 -23 -23 -24 -25 -26 -26 -27 -27 -27 -27 -26 -25 -24 -23 -22 -21 -20 -19 -18 -18 -18 -18 -19 -21 -23 -24 -26 -27 -27 -27 -25 -24 -23 -22 -22 -22 -22 -22 -22 -22 -23 -23 -24 -24 -24 -24 -24 -24 -23 -21 -20 -18 -17 -16 -15 -13 -11 -9 -8 -7 -6 -6 -5 -4 -3 -2 -2 -2 -1 -1 0 1 1 2 2 3 4 5 6 -21 -25 -29 -33 -33 -28 -19 -12 -10 -14 -18 -18 -16 -15 -17 -19 -20 -22 -23 -25 -24 -20 -15 -12 -11 -14 -17 -18 -16 -14 -13 -14 -15 -15 -15 -15 -14 -14 -13 -14 -15 -16 -18 -18 -17 -15 -12 -10 -9 -8 -8 -9 -10 -11 -11 -13 -14 -15 -17 -19 -21 -22 -24 -26 -28 -30 -33 -36 -39 -39 -35 -30 -26 -25 -24 -23 -22 -20 -20 -19 -18 -16 -14 -14 -13 -12 -11 -9 -8 -8 -9 -9 -9 -9 -9 -11 -13 -14 -15 -15 -17 -21 -26 -31 -34 -36 -37 -36 -35 -34 -32 -29 -27 -25 -23 -21 -20 -21 -23 -26 -29 -33 -36 -38 -39 -39 -37 -35 -33 -33 -34 -36 -39 -42 -44 -45 -45 -45 -44 -43 -43 -43 -44 -44 -45 -45 -44 -44 -43 -41 -40 -39 -38 -37 -37 -38 -38 -39 -40 -41 -41 -41 -40 -39 -39 -38 -38 -38 -37 -36 -35 -33 -32 -32 -32 -33 -34 -35 -35 -34 -33 -32 -32 -32 -32 -32 -32 -32 -32 -32 -31 -31 -30 -30 -31 -31 -30 -30 -30 -30 -30 -31 -31 -30 -30 -29 -28 -28 -27 -27 -27 -28 -29 -30 -31 -31 -31 -31 -31 -32 -32 -32 -32 -32 -32 -32 -32 -32 -32 -31 -31 -31 -31 -32 -32 -31 -31 -30 -30 -28 -28 -27 -27 -26 -26 -25 -25 -24 -24 -24 -23 -23 -23 -23 -23 -23 -24 -24 -24 -25 -25 -25 -25 -25 -25 -26 -26 -25 -25 -24 -24 -23 -23 -23 -23 -22 -22 -22 -22 -22 -22 -22 -23 -23 -24 -25 -26 -26 -27 -28 -28 -29 -30 -31 -31 -31 -31 -30 -30 -30 -29 -29 -28 -28 -28 -29 -30 -30 -30 -30 -29 -29 -28 -27 -27 -26 -26 -25 -25 -25 -24 -24 -23 -23 -22 -22 -22 -22 -22 -21 -21 -21 -21 -22 -22 -23 -24 -25 -26 -27 -28 -28 -27 -26 -25 -24 -23 -22 -22 -21 -20 -18 -17 -16 -16 -17 -18 -20 -22 -24 -26 -27 -27 -26 -25 -24 -23 -22 -22 -21 -21 -21 -21 -22 -23 -23 -23 -24 -24 -24 -25 -25 -24 -23 -22 -20 -19 -17 -15 -13 -12 -11 -10 -9 -8 -6 -5 -4 -4 -4 -3 -3 -2 -1 0 0 1 3 4 5 6 6 -21 -24 -29 -33 -34 -30 -22 -14 -9 -12 -17 -17 -15 -14 -15 -18 -20 -21 -22 -24 -26 -24 -19 -13 -10 -10 -14 -17 -17 -15 -14 -13 -14 -15 -15 -15 -14 -14 -14 -13 -13 -12 -13 -14 -13 -12 -11 -10 -9 -9 -8 -8 -7 -7 -7 -8 -8 -9 -10 -12 -15 -17 -20 -22 -23 -25 -28 -32 -36 -38 -36 -31 -27 -24 -23 -21 -18 -15 -14 -12 -12 -11 -10 -9 -8 -7 -5 -4 -2 -3 -5 -8 -9 -9 -8 -10 -11 -13 -13 -13 -15 -18 -22 -27 -30 -33 -34 -34 -34 -32 -30 -27 -25 -23 -22 -20 -20 -20 -21 -24 -26 -30 -33 -36 -38 -39 -38 -36 -35 -35 -36 -37 -40 -42 -44 -45 -46 -45 -45 -44 -44 -45 -45 -45 -46 -46 -45 -45 -44 -43 -41 -40 -39 -38 -38 -38 -39 -40 -41 -42 -42 -42 -42 -41 -41 -40 -39 -39 -38 -37 -35 -33 -32 -32 -32 -33 -35 -35 -35 -35 -34 -34 -33 -33 -33 -34 -34 -34 -34 -34 -33 -32 -32 -32 -32 -32 -32 -31 -31 -32 -32 -33 -33 -32 -31 -31 -30 -29 -29 -28 -28 -29 -30 -31 -31 -32 -32 -32 -32 -31 -31 -31 -32 -32 -32 -31 -31 -31 -31 -31 -31 -31 -31 -31 -31 -30 -30 -30 -29 -28 -28 -28 -27 -27 -26 -25 -24 -24 -24 -24 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -24 -24 -25 -25 -25 -24 -24 -24 -24 -24 -24 -23 -23 -23 -23 -23 -23 -23 -23 -23 -24 -24 -24 -25 -25 -26 -26 -27 -28 -29 -30 -30 -30 -30 -30 -30 -30 -30 -29 -28 -28 -27 -27 -28 -28 -29 -29 -29 -29 -28 -27 -27 -26 -25 -25 -25 -25 -24 -24 -23 -23 -23 -22 -22 -22 -21 -21 -21 -21 -21 -21 -21 -22 -23 -25 -26 -27 -28 -28 -28 -27 -25 -24 -23 -23 -22 -22 -21 -19 -17 -16 -15 -15 -16 -18 -20 -21 -23 -25 -26 -26 -25 -25 -24 -23 -22 -22 -21 -21 -21 -21 -22 -22 -23 -23 -23 -24 -25 -26 -26 -25 -24 -22 -21 -19 -17 -16 -15 -14 -13 -11 -9 -7 -6 -6 -6 -6 -5 -3 -2 -2 -1 -0 1 2 4 5 5 6 -21 -23 -27 -31 -34 -31 -24 -15 -9 -10 -16 -17 -15 -14 -15 -17 -18 -19 -20 -22 -25 -26 -24 -19 -13 -8 -8 -13 -16 -15 -14 -13 -14 -15 -15 -15 -14 -14 -14 -13 -12 -10 -9 -9 -9 -9 -9 -9 -9 -9 -9 -8 -7 -7 -6 -5 -4 -4 -4 -4 -6 -9 -12 -14 -17 -19 -22 -25 -29 -31 -30 -27 -23 -21 -19 -17 -15 -11 -9 -7 -6 -6 -6 -5 -3 -1 1 2 4 3 -0 -4 -6 -7 -5 -6 -8 -10 -11 -12 -14 -16 -18 -20 -24 -27 -30 -31 -31 -30 -28 -25 -23 -22 -20 -19 -18 -18 -19 -21 -23 -26 -29 -32 -35 -37 -38 -37 -37 -37 -37 -38 -40 -42 -43 -44 -45 -45 -45 -45 -45 -46 -46 -46 -47 -46 -46 -45 -44 -43 -42 -41 -40 -39 -39 -39 -39 -40 -41 -42 -43 -43 -43 -43 -42 -42 -41 -40 -39 -37 -36 -34 -33 -33 -33 -34 -35 -36 -36 -36 -36 -35 -34 -34 -35 -35 -36 -36 -36 -36 -35 -34 -34 -34 -34 -33 -33 -33 -33 -34 -34 -34 -34 -34 -33 -33 -32 -31 -30 -30 -30 -30 -31 -32 -32 -33 -33 -32 -32 -31 -31 -31 -31 -31 -31 -31 -31 -30 -30 -30 -30 -30 -30 -30 -29 -29 -29 -29 -29 -28 -28 -28 -28 -27 -26 -25 -25 -24 -24 -24 -24 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -24 -24 -24 -24 -24 -24 -23 -23 -24 -24 -24 -24 -24 -24 -24 -24 -24 -25 -25 -25 -26 -27 -28 -29 -29 -29 -29 -30 -30 -30 -30 -29 -28 -28 -27 -27 -26 -27 -27 -27 -27 -28 -27 -27 -26 -26 -25 -25 -25 -24 -24 -24 -24 -24 -23 -23 -22 -22 -21 -21 -21 -21 -20 -20 -21 -22 -23 -24 -26 -27 -28 -28 -28 -27 -26 -25 -24 -24 -23 -23 -22 -21 -19 -17 -16 -15 -15 -16 -17 -18 -20 -22 -23 -24 -25 -25 -24 -23 -23 -22 -22 -21 -21 -21 -21 -22 -22 -22 -23 -24 -24 -25 -25 -25 -24 -23 -22 -20 -19 -19 -18 -16 -14 -12 -10 -9 -8 -8 -7 -6 -5 -4 -3 -3 -2 -1 0 2 2 3 4 5 -21 -23 -25 -29 -32 -31 -25 -17 -11 -11 -17 -20 -19 -16 -14 -15 -17 -18 -18 -19 -22 -24 -25 -23 -17 -11 -8 -10 -13 -14 -14 -13 -13 -14 -15 -15 -14 -14 -14 -13 -12 -11 -9 -7 -6 -6 -6 -6 -6 -7 -8 -8 -8 -7 -6 -5 -3 -1 1 2 2 0 -3 -6 -9 -12 -15 -18 -20 -22 -21 -19 -16 -14 -12 -10 -9 -7 -4 -3 -2 -2 -2 0 2 4 7 9 10 10 6 2 -0 -0 2 1 -1 -4 -7 -10 -12 -13 -15 -16 -18 -21 -24 -26 -27 -27 -25 -23 -21 -20 -18 -17 -16 -16 -16 -17 -19 -22 -25 -28 -31 -34 -36 -37 -38 -38 -38 -39 -39 -40 -41 -42 -43 -44 -45 -45 -45 -46 -46 -47 -47 -47 -46 -46 -45 -44 -43 -42 -41 -40 -39 -39 -39 -39 -40 -41 -42 -43 -43 -43 -43 -42 -42 -41 -40 -38 -37 -35 -34 -33 -34 -35 -36 -37 -37 -37 -37 -36 -36 -36 -36 -36 -37 -37 -38 -38 -37 -37 -36 -36 -36 -35 -35 -35 -35 -35 -36 -36 -36 -36 -35 -35 -34 -33 -33 -33 -32 -32 -33 -33 -33 -34 -33 -33 -32 -31 -31 -31 -31 -31 -31 -31 -31 -30 -30 -29 -29 -29 -29 -29 -28 -28 -28 -28 -28 -28 -28 -28 -28 -28 -27 -26 -25 -25 -24 -24 -23 -23 -23 -23 -23 -23 -23 -23 -22 -22 -22 -22 -22 -22 -22 -22 -22 -22 -22 -22 -22 -23 -23 -23 -24 -24 -24 -24 -24 -24 -25 -25 -25 -25 -25 -24 -24 -24 -24 -25 -25 -26 -27 -27 -27 -28 -28 -28 -29 -29 -29 -29 -28 -28 -27 -27 -26 -26 -25 -25 -25 -26 -26 -26 -25 -25 -25 -25 -24 -24 -24 -24 -24 -24 -24 -23 -23 -22 -21 -21 -21 -20 -20 -20 -21 -21 -23 -24 -25 -26 -27 -27 -28 -27 -27 -26 -25 -24 -24 -23 -23 -21 -20 -19 -17 -16 -15 -15 -15 -16 -17 -19 -20 -22 -23 -23 -24 -24 -23 -23 -22 -22 -21 -21 -21 -21 -21 -22 -22 -23 -23 -23 -24 -24 -23 -23 -22 -22 -22 -21 -20 -18 -15 -13 -12 -11 -10 -9 -7 -6 -5 -5 -4 -4 -3 -2 -1 -0 1 1 3 5 -19 -21 -24 -27 -31 -31 -27 -20 -13 -11 -17 -21 -22 -19 -16 -15 -16 -16 -17 -17 -19 -21 -23 -23 -20 -16 -11 -10 -12 -13 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -13 -12 -10 -8 -6 -5 -4 -3 -3 -4 -5 -6 -7 -7 -6 -5 -3 -1 2 5 7 6 4 1 -2 -5 -7 -10 -13 -14 -13 -11 -9 -6 -4 -3 -2 -1 0 1 2 3 4 6 8 11 13 15 17 15 12 9 9 12 12 9 5 2 -0 -3 -5 -9 -12 -13 -14 -15 -18 -20 -22 -23 -22 -21 -19 -18 -16 -15 -14 -13 -13 -14 -15 -17 -19 -22 -26 -29 -32 -35 -37 -38 -38 -38 -38 -38 -39 -40 -42 -43 -43 -44 -45 -46 -46 -46 -46 -46 -46 -46 -45 -45 -44 -43 -42 -41 -40 -39 -39 -38 -39 -39 -40 -41 -42 -42 -42 -42 -42 -41 -40 -39 -38 -36 -35 -35 -35 -35 -36 -37 -37 -38 -37 -37 -37 -37 -37 -37 -38 -39 -39 -40 -39 -39 -39 -38 -38 -37 -36 -36 -36 -37 -37 -37 -37 -37 -37 -37 -36 -36 -35 -35 -35 -34 -34 -35 -35 -35 -34 -33 -32 -32 -32 -32 -32 -32 -32 -32 -31 -31 -30 -29 -29 -28 -28 -28 -28 -28 -27 -27 -27 -27 -28 -28 -29 -28 -28 -27 -26 -25 -25 -24 -23 -23 -23 -22 -22 -22 -22 -22 -22 -22 -22 -22 -22 -22 -22 -22 -21 -21 -21 -21 -21 -22 -22 -23 -23 -23 -24 -24 -24 -25 -25 -25 -25 -25 -25 -25 -25 -24 -24 -24 -25 -25 -25 -26 -26 -26 -26 -27 -27 -28 -28 -28 -28 -28 -27 -27 -26 -25 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -23 -22 -22 -21 -20 -20 -20 -20 -21 -21 -22 -23 -25 -25 -26 -27 -27 -27 -27 -26 -26 -25 -25 -24 -23 -22 -21 -20 -19 -17 -16 -16 -15 -15 -16 -17 -18 -19 -20 -21 -22 -23 -23 -23 -23 -22 -22 -21 -21 -21 -21 -21 -21 -22 -22 -22 -22 -23 -23 -23 -23 -23 -23 -22 -21 -19 -17 -16 -14 -13 -12 -10 -8 -7 -6 -6 -5 -5 -4 -3 -2 -2 -2 -1 1 3 -16 -20 -23 -26 -30 -32 -29 -22 -15 -11 -15 -21 -23 -21 -18 -16 -17 -17 -17 -17 -17 -19 -21 -22 -21 -18 -14 -11 -12 -13 -14 -14 -13 -12 -12 -12 -12 -11 -11 -12 -12 -12 -11 -9 -8 -6 -4 -3 -2 -1 -2 -3 -4 -5 -5 -5 -3 -1 2 5 8 9 9 7 4 2 -0 -2 -5 -7 -7 -6 -4 -1 1 4 5 6 7 7 7 7 9 11 14 18 20 22 23 21 18 18 21 26 22 17 13 11 9 7 5 2 -2 -7 -9 -10 -11 -14 -17 -19 -19 -18 -17 -16 -14 -13 -12 -11 -10 -10 -10 -11 -14 -16 -19 -22 -26 -30 -33 -35 -36 -36 -36 -36 -37 -38 -39 -41 -42 -43 -43 -44 -45 -45 -45 -45 -45 -45 -45 -45 -44 -43 -42 -41 -40 -39 -38 -37 -37 -37 -38 -39 -39 -40 -40 -40 -40 -40 -39 -38 -38 -36 -35 -35 -35 -35 -36 -37 -37 -38 -38 -37 -37 -37 -37 -38 -39 -40 -41 -41 -41 -41 -41 -41 -40 -39 -38 -38 -38 -38 -38 -38 -38 -38 -38 -38 -38 -38 -37 -37 -36 -36 -36 -36 -35 -35 -35 -34 -33 -33 -33 -33 -33 -33 -33 -33 -32 -31 -30 -30 -29 -28 -28 -28 -28 -28 -27 -26 -26 -27 -28 -28 -29 -29 -28 -28 -27 -26 -25 -24 -23 -23 -22 -21 -21 -21 -21 -22 -22 -22 -22 -22 -22 -22 -22 -21 -21 -21 -20 -20 -20 -21 -21 -21 -22 -22 -23 -23 -24 -24 -25 -25 -26 -26 -26 -25 -25 -25 -24 -24 -24 -24 -24 -24 -24 -25 -25 -25 -25 -25 -25 -26 -26 -26 -26 -26 -26 -25 -24 -23 -22 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -24 -24 -24 -24 -24 -23 -22 -21 -21 -20 -20 -20 -21 -21 -22 -23 -24 -25 -26 -27 -27 -27 -27 -26 -26 -26 -25 -24 -23 -22 -21 -20 -19 -18 -18 -17 -16 -16 -16 -16 -16 -17 -18 -19 -20 -21 -22 -22 -23 -23 -22 -22 -21 -21 -20 -20 -20 -20 -21 -21 -21 -22 -22 -23 -23 -23 -23 -22 -22 -21 -20 -18 -17 -15 -14 -12 -10 -9 -8 -7 -7 -6 -5 -5 -5 -5 -4 -2 -1 1 -14 -17 -21 -24 -29 -32 -31 -24 -16 -11 -13 -19 -22 -21 -19 -17 -18 -18 -18 -18 -17 -17 -19 -20 -20 -18 -15 -12 -12 -13 -15 -16 -15 -13 -12 -11 -11 -10 -10 -10 -10 -11 -11 -10 -9 -8 -6 -5 -3 -2 -1 -1 -2 -3 -3 -4 -3 -1 2 4 7 10 10 10 8 7 6 4 2 0 -1 -1 0 3 6 9 11 12 13 12 12 12 14 16 19 22 25 27 27 25 23 23 27 33 28 23 20 18 16 14 12 8 4 2 0 -1 -4 -7 -11 -14 -15 -15 -14 -13 -12 -11 -9 -8 -7 -6 -6 -7 -8 -10 -12 -15 -18 -22 -26 -29 -31 -32 -33 -34 -34 -35 -36 -38 -39 -40 -41 -42 -43 -43 -43 -42 -42 -42 -43 -43 -43 -42 -41 -40 -39 -38 -37 -36 -36 -35 -35 -36 -36 -37 -37 -38 -38 -37 -37 -37 -36 -35 -35 -34 -35 -35 -36 -36 -37 -37 -37 -37 -37 -37 -37 -38 -39 -40 -41 -42 -42 -43 -43 -43 -42 -41 -40 -40 -39 -39 -39 -39 -39 -39 -39 -39 -39 -39 -39 -38 -38 -37 -36 -36 -36 -35 -35 -34 -34 -34 -34 -34 -35 -34 -34 -33 -33 -32 -31 -30 -29 -29 -28 -28 -28 -28 -27 -26 -26 -27 -27 -28 -29 -29 -29 -28 -27 -27 -26 -25 -24 -23 -22 -21 -21 -20 -21 -21 -21 -21 -21 -21 -21 -21 -21 -21 -21 -20 -20 -20 -20 -20 -20 -20 -21 -21 -22 -22 -23 -23 -24 -24 -25 -25 -26 -26 -25 -25 -25 -24 -24 -24 -24 -23 -23 -23 -24 -24 -24 -24 -24 -24 -24 -24 -25 -25 -25 -24 -23 -22 -21 -21 -21 -22 -22 -22 -22 -22 -22 -22 -22 -22 -22 -23 -23 -24 -24 -24 -23 -22 -21 -20 -20 -20 -20 -21 -21 -22 -23 -25 -26 -26 -27 -27 -27 -26 -26 -26 -25 -24 -24 -23 -21 -20 -19 -18 -18 -17 -17 -17 -17 -16 -16 -16 -16 -16 -17 -18 -20 -21 -22 -22 -22 -22 -21 -21 -20 -20 -20 -20 -20 -20 -20 -20 -21 -21 -22 -22 -22 -22 -22 -22 -21 -20 -19 -18 -16 -14 -13 -11 -10 -9 -8 -7 -7 -7 -7 -6 -5 -4 -3 -2 -14 -15 -18 -22 -26 -31 -32 -27 -19 -12 -11 -16 -20 -21 -19 -17 -17 -18 -19 -19 -17 -17 -18 -19 -20 -19 -16 -12 -11 -12 -15 -17 -17 -16 -15 -13 -12 -11 -9 -9 -8 -9 -9 -9 -8 -8 -7 -6 -6 -5 -3 -2 -1 -2 -2 -3 -2 -1 1 4 8 10 12 11 10 9 9 8 7 6 5 4 4 6 8 10 12 15 18 19 18 18 18 19 20 22 25 28 30 29 29 29 32 37 33 28 25 21 16 11 8 7 6 2 -3 -2 -0 -0 -3 -7 -9 -10 -9 -9 -8 -7 -6 -6 -5 -4 -3 -3 -4 -5 -6 -8 -11 -15 -18 -22 -25 -27 -28 -29 -30 -31 -33 -34 -36 -37 -39 -39 -40 -40 -40 -39 -39 -39 -40 -40 -40 -39 -38 -38 -37 -36 -35 -35 -34 -33 -33 -33 -33 -34 -34 -34 -34 -34 -34 -34 -34 -33 -33 -33 -33 -34 -34 -35 -36 -36 -36 -36 -36 -36 -36 -37 -38 -39 -41 -42 -42 -43 -44 -44 -43 -42 -42 -41 -41 -41 -40 -40 -39 -39 -39 -39 -39 -39 -39 -38 -38 -37 -37 -36 -36 -35 -35 -35 -34 -35 -35 -35 -35 -34 -34 -33 -32 -31 -31 -30 -29 -29 -29 -29 -29 -28 -27 -27 -27 -27 -27 -28 -28 -28 -28 -28 -27 -26 -26 -25 -24 -23 -22 -21 -21 -20 -20 -20 -20 -20 -20 -21 -21 -21 -21 -21 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -21 -21 -21 -22 -23 -23 -24 -25 -25 -25 -25 -25 -25 -25 -24 -24 -23 -23 -23 -23 -23 -23 -23 -23 -23 -22 -22 -22 -23 -23 -23 -22 -22 -21 -21 -20 -20 -20 -21 -21 -21 -21 -21 -21 -21 -21 -21 -21 -22 -23 -23 -24 -23 -23 -22 -20 -20 -19 -19 -20 -21 -22 -23 -24 -25 -26 -27 -27 -27 -27 -26 -26 -26 -25 -24 -23 -22 -21 -19 -18 -18 -17 -17 -18 -18 -17 -17 -16 -15 -15 -15 -16 -17 -19 -20 -21 -21 -22 -21 -21 -21 -20 -20 -20 -19 -19 -19 -19 -19 -20 -20 -20 -21 -21 -21 -21 -21 -21 -20 -19 -18 -17 -15 -14 -12 -10 -9 -8 -7 -7 -7 -6 -6 -5 -5 -4 -15 -15 -16 -19 -23 -28 -31 -29 -23 -15 -10 -13 -18 -19 -18 -16 -15 -17 -18 -18 -17 -17 -17 -18 -20 -19 -18 -14 -11 -11 -13 -16 -18 -18 -18 -17 -15 -13 -12 -10 -9 -9 -9 -8 -7 -7 -6 -6 -6 -6 -5 -4 -3 -2 -2 -2 -2 -2 -0 2 6 10 13 14 13 11 11 10 10 10 9 10 10 10 10 10 10 12 16 20 23 23 21 20 21 24 27 31 37 41 42 42 41 41 36 31 27 22 16 9 8 10 11 9 4 1 2 5 5 2 -2 -3 -3 -3 -3 -3 -2 -2 -2 -2 -1 -1 -1 -2 -2 -4 -6 -8 -11 -14 -17 -19 -21 -22 -24 -26 -28 -30 -32 -33 -35 -36 -36 -36 -36 -36 -36 -36 -36 -36 -35 -35 -34 -34 -33 -33 -33 -32 -32 -32 -31 -31 -31 -31 -31 -31 -31 -31 -31 -31 -31 -30 -30 -30 -31 -31 -32 -33 -33 -34 -34 -34 -34 -34 -35 -35 -36 -37 -39 -40 -41 -42 -43 -43 -43 -43 -43 -42 -42 -41 -40 -40 -39 -39 -39 -39 -39 -39 -39 -38 -38 -37 -36 -36 -35 -35 -34 -34 -34 -34 -34 -34 -33 -33 -32 -31 -31 -30 -29 -29 -29 -29 -29 -29 -29 -28 -28 -27 -27 -27 -27 -27 -27 -28 -28 -27 -26 -26 -25 -25 -24 -23 -23 -22 -22 -21 -20 -20 -19 -19 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -21 -21 -22 -22 -23 -23 -24 -24 -25 -25 -25 -25 -24 -24 -24 -23 -23 -23 -23 -23 -23 -23 -23 -22 -22 -21 -21 -21 -21 -21 -20 -20 -20 -19 -19 -19 -20 -20 -20 -20 -20 -20 -20 -19 -19 -20 -20 -21 -22 -23 -23 -23 -22 -21 -20 -19 -18 -19 -19 -20 -22 -23 -24 -26 -26 -27 -27 -27 -27 -26 -26 -25 -25 -24 -23 -22 -20 -19 -18 -18 -17 -17 -18 -18 -18 -17 -17 -16 -15 -15 -15 -16 -18 -19 -20 -20 -21 -21 -21 -21 -20 -20 -20 -19 -19 -19 -18 -18 -19 -19 -19 -20 -20 -21 -21 -21 -21 -20 -19 -18 -17 -15 -13 -12 -10 -9 -8 -7 -6 -6 -6 -6 -5 -5 -18 -17 -16 -17 -19 -24 -28 -30 -26 -19 -11 -11 -14 -18 -18 -15 -12 -13 -15 -17 -17 -15 -15 -16 -17 -18 -18 -16 -13 -11 -11 -12 -15 -16 -17 -17 -17 -15 -14 -13 -12 -11 -11 -10 -8 -7 -6 -5 -5 -5 -5 -5 -4 -3 -2 -1 -0 -1 -1 0 3 8 13 15 15 14 13 13 12 12 12 13 14 13 11 9 8 8 12 17 22 24 23 21 22 24 27 32 39 42 42 41 41 38 31 27 25 21 16 10 8 10 13 14 10 6 8 12 13 11 7 5 4 3 3 3 3 2 2 1 1 1 1 1 0 -1 -2 -4 -6 -8 -10 -12 -13 -15 -17 -19 -21 -24 -26 -28 -29 -31 -31 -32 -32 -32 -32 -32 -32 -31 -31 -30 -29 -29 -29 -28 -29 -29 -29 -29 -29 -29 -29 -28 -28 -28 -28 -28 -28 -28 -28 -27 -27 -28 -28 -29 -29 -30 -31 -31 -32 -32 -32 -33 -33 -34 -34 -35 -36 -37 -39 -40 -41 -42 -42 -43 -43 -42 -42 -41 -40 -40 -39 -38 -38 -39 -39 -38 -38 -38 -37 -36 -36 -35 -35 -34 -34 -33 -33 -32 -32 -31 -31 -30 -29 -29 -28 -27 -27 -27 -27 -27 -28 -28 -28 -28 -28 -27 -27 -27 -27 -26 -27 -27 -27 -26 -26 -25 -25 -24 -24 -24 -24 -23 -23 -22 -21 -20 -19 -19 -19 -19 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -21 -21 -21 -22 -22 -22 -23 -24 -24 -24 -24 -24 -24 -24 -24 -24 -23 -23 -23 -23 -23 -23 -22 -22 -21 -20 -20 -19 -19 -19 -19 -19 -19 -19 -18 -18 -19 -19 -19 -19 -19 -18 -18 -18 -18 -18 -19 -20 -21 -22 -23 -23 -22 -21 -19 -18 -18 -18 -18 -20 -21 -23 -24 -26 -26 -27 -27 -27 -27 -27 -26 -26 -25 -24 -23 -21 -20 -19 -18 -18 -17 -17 -18 -18 -18 -18 -17 -16 -15 -15 -15 -15 -16 -17 -19 -19 -20 -20 -21 -21 -20 -20 -19 -19 -19 -19 -18 -18 -18 -18 -19 -19 -20 -20 -20 -20 -20 -19 -18 -17 -16 -15 -14 -12 -11 -9 -7 -6 -5 -5 -5 -5 -4 -20 -19 -19 -18 -18 -20 -25 -29 -29 -24 -15 -9 -10 -14 -17 -16 -12 -10 -12 -14 -15 -14 -13 -13 -14 -16 -17 -16 -13 -10 -8 -7 -9 -12 -14 -15 -16 -15 -14 -14 -13 -13 -13 -12 -11 -9 -7 -6 -5 -5 -5 -5 -5 -4 -2 -0 2 2 2 1 2 6 11 15 17 17 16 15 15 15 16 16 16 15 12 9 8 8 8 11 15 19 21 21 21 22 24 27 31 32 32 33 33 31 25 23 22 21 18 14 11 11 12 14 14 14 16 18 19 18 16 13 12 10 9 8 8 8 7 6 5 4 3 3 2 2 1 -1 -2 -4 -5 -6 -7 -8 -10 -12 -14 -17 -20 -22 -23 -25 -26 -26 -27 -27 -27 -27 -27 -26 -26 -25 -25 -24 -24 -24 -24 -25 -26 -27 -27 -27 -27 -27 -26 -26 -26 -26 -26 -25 -25 -25 -25 -26 -26 -26 -27 -27 -28 -28 -29 -30 -30 -31 -31 -32 -32 -33 -34 -35 -36 -37 -38 -40 -40 -41 -41 -41 -41 -40 -40 -39 -38 -38 -38 -38 -38 -38 -37 -37 -36 -36 -36 -35 -35 -34 -33 -32 -31 -30 -29 -28 -27 -27 -26 -26 -25 -25 -25 -25 -25 -25 -26 -26 -26 -26 -27 -27 -27 -26 -26 -26 -26 -26 -26 -26 -26 -25 -25 -24 -24 -24 -24 -24 -24 -23 -22 -21 -20 -20 -19 -19 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -21 -21 -21 -20 -20 -20 -20 -20 -20 -20 -21 -21 -21 -22 -22 -23 -23 -23 -24 -24 -24 -24 -24 -23 -23 -23 -23 -22 -22 -22 -21 -20 -19 -19 -18 -17 -17 -17 -17 -18 -18 -18 -18 -18 -18 -18 -18 -18 -17 -16 -16 -16 -17 -18 -19 -20 -21 -22 -22 -22 -20 -19 -17 -17 -17 -17 -19 -20 -22 -24 -25 -26 -27 -27 -27 -27 -27 -26 -26 -25 -24 -23 -21 -20 -19 -18 -18 -18 -18 -18 -18 -18 -18 -17 -16 -15 -14 -14 -14 -15 -16 -17 -18 -19 -20 -20 -20 -20 -20 -20 -20 -19 -19 -19 -18 -18 -19 -19 -19 -19 -20 -20 -20 -19 -19 -18 -17 -16 -15 -14 -12 -11 -9 -7 -6 -5 -4 -4 -3 -20 -21 -21 -21 -20 -20 -22 -26 -29 -29 -22 -12 -8 -9 -14 -17 -14 -11 -10 -10 -12 -14 -13 -13 -13 -13 -15 -16 -14 -11 -8 -5 -5 -7 -9 -11 -13 -13 -13 -12 -12 -12 -12 -12 -12 -11 -9 -8 -7 -6 -5 -5 -5 -5 -4 -1 2 4 5 4 3 5 10 14 18 20 19 19 18 18 18 19 18 17 13 10 9 8 7 6 8 12 16 19 20 20 20 20 22 24 26 28 28 26 24 24 25 25 23 21 18 14 13 14 18 21 21 21 20 21 22 21 19 17 15 14 13 13 12 11 9 8 7 6 5 4 3 2 0 -1 -2 -2 -2 -3 -4 -6 -8 -10 -13 -15 -17 -18 -19 -20 -21 -21 -22 -22 -22 -21 -21 -21 -21 -20 -20 -20 -20 -21 -22 -23 -24 -24 -24 -25 -25 -25 -25 -25 -24 -24 -23 -23 -23 -24 -24 -24 -24 -24 -25 -25 -26 -27 -28 -28 -29 -29 -30 -30 -31 -32 -33 -34 -36 -37 -38 -39 -39 -39 -39 -39 -38 -38 -38 -37 -37 -37 -37 -36 -36 -35 -35 -35 -35 -35 -34 -33 -32 -31 -30 -29 -28 -26 -25 -24 -24 -23 -23 -23 -23 -23 -23 -23 -23 -24 -24 -25 -25 -25 -25 -25 -25 -26 -26 -26 -26 -26 -26 -25 -25 -24 -24 -24 -24 -25 -25 -24 -23 -22 -21 -21 -21 -20 -20 -20 -20 -20 -19 -19 -19 -20 -20 -20 -20 -21 -21 -21 -21 -20 -20 -20 -20 -19 -19 -19 -19 -20 -20 -20 -21 -21 -22 -22 -23 -23 -23 -23 -23 -23 -23 -22 -22 -22 -21 -21 -20 -19 -19 -18 -17 -17 -16 -16 -16 -17 -17 -17 -17 -17 -17 -17 -17 -16 -15 -15 -15 -15 -16 -17 -18 -20 -21 -22 -22 -21 -20 -18 -17 -16 -16 -16 -17 -19 -21 -23 -24 -26 -26 -26 -26 -26 -26 -26 -26 -25 -24 -22 -21 -20 -19 -18 -18 -18 -18 -18 -18 -18 -18 -17 -16 -15 -14 -13 -13 -13 -15 -16 -17 -18 -19 -19 -20 -20 -20 -20 -20 -20 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -18 -17 -16 -15 -14 -13 -11 -10 -8 -6 -4 -4 -3 -19 -21 -22 -23 -23 -22 -23 -25 -28 -30 -28 -20 -11 -7 -8 -13 -15 -13 -10 -9 -9 -11 -12 -12 -12 -12 -13 -14 -14 -13 -9 -6 -3 -2 -4 -7 -9 -10 -10 -9 -10 -10 -11 -11 -12 -12 -11 -10 -8 -7 -7 -7 -7 -7 -6 -4 -0 3 5 6 6 7 10 14 18 20 21 21 21 20 20 21 20 19 16 12 9 7 6 5 5 8 12 16 19 20 20 20 21 25 28 30 31 30 29 29 30 30 30 28 25 21 19 19 21 23 23 21 20 21 26 27 25 23 21 20 18 18 17 16 14 13 11 10 9 7 6 4 3 2 1 1 1 1 1 -1 -3 -5 -7 -9 -11 -12 -13 -14 -15 -15 -15 -16 -16 -16 -17 -17 -17 -17 -17 -17 -17 -18 -19 -20 -20 -21 -21 -22 -23 -23 -24 -24 -23 -23 -22 -22 -22 -22 -22 -22 -22 -22 -22 -23 -23 -24 -25 -25 -26 -27 -27 -28 -29 -29 -30 -32 -33 -34 -36 -36 -37 -37 -37 -37 -37 -37 -37 -37 -36 -36 -35 -35 -34 -33 -33 -33 -33 -33 -33 -32 -32 -31 -30 -29 -27 -25 -24 -23 -23 -22 -22 -22 -22 -22 -22 -22 -22 -22 -23 -23 -23 -24 -24 -24 -25 -25 -25 -25 -26 -26 -26 -26 -25 -25 -24 -24 -25 -25 -25 -24 -24 -23 -23 -22 -22 -22 -22 -21 -20 -20 -20 -19 -20 -20 -20 -20 -20 -21 -21 -21 -21 -20 -20 -19 -19 -19 -18 -18 -18 -18 -18 -18 -19 -19 -20 -20 -21 -22 -22 -22 -22 -22 -22 -22 -22 -21 -21 -20 -20 -20 -19 -19 -18 -17 -17 -16 -16 -16 -16 -16 -16 -17 -17 -17 -17 -16 -15 -14 -13 -13 -14 -15 -16 -17 -19 -20 -21 -21 -20 -19 -17 -16 -15 -15 -15 -16 -17 -19 -21 -23 -24 -25 -25 -26 -26 -26 -26 -25 -24 -23 -22 -20 -19 -19 -18 -18 -18 -18 -18 -18 -18 -18 -17 -16 -15 -14 -12 -12 -12 -13 -15 -16 -17 -18 -18 -19 -19 -19 -20 -20 -20 -20 -20 -19 -19 -19 -19 -19 -19 -19 -19 -20 -20 -19 -19 -17 -17 -16 -15 -14 -12 -10 -8 -6 -5 -4 -17 -18 -21 -23 -25 -25 -24 -25 -28 -31 -31 -27 -19 -11 -7 -8 -12 -14 -13 -10 -8 -8 -10 -11 -11 -11 -12 -12 -13 -13 -11 -8 -4 -1 -0 -2 -4 -6 -6 -6 -6 -7 -8 -9 -10 -11 -11 -10 -9 -8 -8 -8 -8 -9 -9 -7 -5 -1 3 5 7 9 12 16 19 21 22 23 22 22 22 22 22 21 19 15 11 9 8 7 7 7 9 13 16 19 21 21 22 25 29 32 34 35 34 32 31 31 32 34 32 29 25 22 22 23 23 21 21 24 29 30 30 29 27 25 23 22 21 20 19 18 17 15 13 12 10 8 7 6 5 5 5 5 4 3 2 0 -2 -3 -4 -6 -6 -7 -8 -8 -9 -10 -10 -11 -12 -13 -13 -14 -14 -14 -15 -15 -16 -16 -16 -17 -18 -19 -20 -21 -21 -21 -21 -21 -21 -21 -20 -20 -20 -19 -19 -19 -20 -20 -20 -21 -22 -23 -23 -24 -25 -25 -26 -26 -27 -28 -30 -32 -33 -34 -34 -35 -35 -35 -36 -36 -36 -36 -36 -35 -34 -33 -32 -31 -31 -31 -32 -32 -32 -31 -31 -30 -29 -28 -27 -26 -24 -23 -23 -22 -22 -22 -22 -22 -22 -22 -21 -21 -22 -22 -22 -22 -23 -23 -24 -24 -24 -25 -25 -25 -26 -26 -25 -25 -25 -25 -25 -25 -25 -24 -24 -24 -24 -24 -24 -24 -23 -22 -21 -21 -20 -20 -20 -20 -20 -20 -21 -21 -21 -21 -21 -21 -20 -20 -19 -18 -17 -17 -17 -16 -16 -16 -17 -17 -18 -19 -19 -20 -20 -21 -21 -21 -21 -21 -21 -21 -21 -20 -20 -20 -20 -19 -19 -18 -18 -17 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -15 -14 -12 -11 -11 -12 -13 -15 -17 -18 -19 -20 -20 -19 -18 -17 -15 -14 -14 -14 -15 -16 -18 -20 -22 -23 -24 -24 -24 -25 -25 -24 -24 -23 -22 -21 -20 -19 -19 -18 -18 -19 -19 -18 -18 -18 -17 -17 -16 -15 -14 -12 -11 -11 -12 -14 -15 -16 -17 -17 -18 -18 -19 -19 -20 -20 -20 -20 -19 -19 -19 -19 -18 -19 -19 -20 -20 -20 -20 -19 -18 -17 -16 -15 -14 -13 -11 -9 -7 -6 -15 -16 -18 -21 -23 -24 -25 -25 -27 -30 -33 -32 -27 -20 -12 -6 -7 -12 -14 -13 -10 -8 -7 -8 -10 -10 -10 -10 -12 -12 -12 -11 -7 -3 1 2 1 -0 -1 -2 -2 -3 -4 -6 -7 -8 -9 -9 -9 -8 -8 -8 -9 -10 -10 -10 -8 -5 -2 2 5 8 12 15 19 22 24 25 24 24 24 24 24 23 21 17 14 13 12 9 7 5 5 8 12 16 19 20 20 23 26 31 36 38 38 36 34 34 36 38 37 35 31 27 23 25 27 28 28 25 25 29 32 33 31 30 28 26 25 24 23 23 22 20 18 17 15 13 11 10 9 8 8 8 7 7 6 5 3 2 1 1 -0 -1 -1 -2 -3 -4 -5 -7 -8 -9 -10 -11 -12 -12 -13 -13 -13 -13 -13 -13 -14 -15 -16 -17 -17 -18 -18 -19 -19 -19 -18 -18 -17 -17 -17 -17 -17 -17 -18 -18 -19 -20 -21 -22 -22 -22 -23 -23 -24 -25 -26 -28 -30 -31 -31 -32 -33 -34 -34 -35 -35 -35 -35 -34 -33 -32 -31 -31 -30 -30 -31 -31 -31 -30 -30 -30 -29 -28 -27 -26 -25 -24 -24 -23 -23 -23 -23 -23 -22 -22 -22 -21 -21 -21 -21 -21 -22 -22 -23 -23 -23 -24 -24 -25 -25 -25 -25 -25 -25 -25 -25 -25 -24 -24 -24 -24 -25 -25 -25 -25 -24 -24 -23 -22 -21 -21 -21 -21 -21 -22 -22 -22 -23 -23 -23 -23 -22 -21 -20 -19 -17 -17 -16 -15 -15 -15 -16 -16 -17 -17 -18 -19 -20 -20 -20 -21 -21 -21 -21 -21 -21 -20 -20 -20 -20 -20 -20 -19 -19 -19 -18 -17 -16 -16 -16 -17 -17 -16 -16 -15 -15 -14 -12 -10 -9 -9 -10 -12 -14 -16 -17 -18 -19 -19 -18 -17 -16 -15 -13 -13 -13 -13 -14 -16 -18 -20 -21 -22 -23 -23 -23 -23 -23 -23 -22 -21 -20 -19 -19 -18 -18 -18 -18 -18 -18 -18 -18 -17 -17 -16 -15 -14 -12 -11 -11 -12 -13 -14 -15 -16 -17 -17 -18 -18 -19 -19 -19 -20 -20 -19 -19 -19 -18 -18 -19 -19 -20 -20 -21 -21 -20 -19 -17 -16 -15 -14 -13 -12 -10 -8 -15 -14 -15 -18 -20 -22 -23 -24 -26 -28 -32 -34 -33 -29 -21 -12 -6 -8 -12 -15 -14 -11 -7 -6 -7 -7 -8 -8 -9 -11 -12 -12 -11 -6 -1 4 6 6 5 4 3 2 0 -2 -3 -4 -5 -6 -6 -6 -6 -6 -6 -7 -8 -8 -8 -6 -4 -1 1 4 8 11 15 19 23 26 27 28 27 26 25 25 23 20 17 17 15 11 8 5 4 5 8 11 14 16 16 18 21 26 33 38 39 37 36 36 38 41 41 39 37 34 29 28 30 32 31 27 24 26 30 34 35 33 32 30 29 28 27 27 26 25 24 22 21 19 17 15 14 13 12 12 11 10 10 9 8 7 7 6 6 5 5 4 3 2 -0 -2 -4 -5 -7 -8 -9 -10 -10 -10 -10 -10 -10 -10 -11 -11 -12 -12 -13 -14 -14 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -16 -16 -17 -18 -19 -19 -19 -20 -20 -20 -21 -23 -24 -25 -27 -28 -29 -30 -31 -32 -33 -34 -34 -34 -34 -33 -32 -31 -30 -30 -30 -30 -30 -30 -30 -30 -29 -29 -28 -27 -27 -26 -25 -25 -24 -24 -24 -24 -23 -23 -23 -22 -22 -21 -21 -20 -20 -21 -21 -22 -22 -22 -22 -23 -24 -24 -24 -25 -25 -25 -25 -26 -25 -25 -24 -24 -24 -24 -25 -25 -25 -25 -24 -24 -23 -22 -22 -22 -22 -23 -23 -23 -24 -24 -25 -25 -25 -25 -24 -22 -21 -19 -18 -17 -16 -15 -15 -15 -15 -16 -16 -17 -18 -19 -20 -20 -21 -21 -21 -21 -21 -21 -21 -21 -21 -21 -20 -20 -20 -20 -20 -20 -19 -18 -17 -17 -17 -17 -17 -16 -16 -15 -14 -12 -10 -8 -7 -8 -9 -11 -13 -15 -16 -17 -17 -17 -16 -16 -15 -14 -13 -12 -11 -12 -12 -14 -16 -18 -19 -20 -21 -21 -22 -22 -22 -21 -21 -20 -19 -18 -18 -18 -18 -18 -18 -18 -18 -18 -17 -17 -17 -16 -15 -14 -12 -11 -11 -11 -12 -14 -15 -15 -16 -16 -17 -17 -18 -18 -19 -19 -19 -19 -19 -19 -19 -19 -19 -20 -20 -21 -21 -21 -20 -19 -17 -16 -15 -14 -14 -12 -10 -15 -14 -14 -15 -17 -19 -20 -22 -23 -25 -29 -32 -34 -34 -30 -23 -14 -8 -9 -13 -17 -16 -12 -8 -5 -4 -5 -5 -6 -8 -10 -12 -12 -10 -5 1 7 11 12 11 10 8 6 4 3 1 -1 -2 -3 -3 -2 -1 -1 -1 -2 -3 -4 -4 -3 -2 -0 2 4 7 10 14 18 23 27 30 31 29 28 27 25 23 21 20 17 13 10 7 5 4 6 8 11 12 13 14 17 21 27 33 36 36 36 37 39 41 42 43 43 41 34 30 30 33 36 36 32 29 29 32 36 36 35 34 33 32 31 31 30 30 29 28 27 25 23 22 20 19 18 16 15 15 14 13 13 12 12 12 11 11 10 10 8 7 4 2 0 -2 -3 -5 -6 -7 -7 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -9 -10 -11 -11 -11 -12 -12 -12 -13 -13 -13 -13 -13 -13 -14 -14 -15 -16 -16 -16 -17 -17 -18 -18 -19 -20 -21 -22 -23 -25 -27 -28 -30 -31 -32 -32 -32 -32 -32 -31 -31 -30 -30 -30 -29 -29 -30 -30 -30 -29 -29 -28 -27 -27 -26 -26 -25 -25 -24 -24 -24 -24 -24 -23 -23 -22 -21 -20 -20 -20 -20 -20 -20 -20 -20 -21 -22 -22 -23 -23 -24 -24 -25 -26 -26 -25 -25 -24 -24 -24 -24 -24 -24 -24 -24 -24 -23 -23 -22 -22 -22 -23 -23 -24 -25 -25 -26 -26 -27 -27 -27 -27 -25 -24 -22 -20 -19 -18 -17 -16 -16 -16 -16 -16 -17 -18 -19 -20 -20 -21 -21 -22 -22 -22 -22 -22 -21 -21 -21 -21 -21 -21 -21 -22 -22 -21 -20 -19 -18 -17 -17 -17 -16 -16 -16 -15 -14 -12 -9 -7 -6 -6 -8 -10 -13 -14 -15 -16 -16 -15 -15 -15 -14 -13 -12 -11 -10 -10 -11 -12 -14 -16 -18 -19 -19 -20 -20 -20 -20 -20 -19 -19 -18 -17 -17 -17 -17 -17 -17 -17 -17 -17 -17 -17 -17 -16 -15 -14 -13 -12 -11 -12 -12 -13 -14 -15 -15 -16 -16 -16 -17 -18 -18 -19 -19 -19 -19 -19 -19 -19 -20 -20 -21 -21 -22 -21 -20 -18 -17 -15 -15 -14 -13 -12 -15 -15 -14 -13 -14 -16 -17 -18 -20 -21 -24 -27 -31 -34 -34 -32 -26 -17 -11 -11 -15 -19 -19 -14 -9 -6 -4 -3 -3 -4 -6 -9 -11 -12 -10 -5 2 9 14 15 15 14 12 10 8 6 3 1 -0 -0 2 3 5 6 5 4 1 -2 -4 -3 -2 1 3 5 7 10 14 19 24 29 31 32 32 31 30 28 26 24 20 16 13 10 8 6 6 8 10 12 14 15 16 19 23 28 31 33 34 36 39 41 43 46 47 45 37 32 31 36 41 43 38 33 30 31 35 38 38 37 36 35 35 34 34 34 34 33 33 31 30 28 27 25 24 22 21 20 19 18 17 17 17 17 16 16 16 15 13 12 9 7 4 2 1 -1 -2 -3 -4 -4 -5 -5 -5 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -6 -7 -7 -8 -10 -10 -11 -11 -11 -11 -11 -11 -12 -12 -13 -13 -14 -14 -15 -15 -16 -16 -17 -17 -18 -19 -20 -22 -24 -26 -28 -29 -29 -30 -30 -30 -30 -30 -29 -29 -29 -28 -28 -29 -29 -29 -28 -28 -27 -27 -26 -26 -26 -25 -25 -24 -24 -24 -24 -24 -24 -23 -23 -22 -21 -20 -20 -19 -19 -19 -19 -20 -20 -21 -21 -21 -22 -22 -23 -24 -25 -26 -25 -25 -24 -24 -23 -23 -23 -23 -23 -23 -22 -22 -21 -21 -21 -21 -22 -23 -24 -25 -26 -26 -27 -28 -28 -29 -28 -28 -26 -25 -23 -22 -21 -19 -18 -18 -17 -17 -17 -17 -18 -19 -20 -21 -21 -22 -22 -22 -22 -22 -22 -22 -22 -22 -22 -21 -21 -22 -22 -23 -23 -22 -20 -19 -17 -16 -16 -16 -16 -16 -16 -15 -14 -12 -9 -6 -5 -5 -7 -10 -12 -13 -14 -14 -14 -14 -14 -14 -13 -12 -11 -10 -9 -9 -10 -11 -13 -14 -16 -17 -18 -19 -19 -19 -19 -18 -18 -17 -16 -16 -16 -16 -16 -16 -16 -15 -15 -16 -16 -16 -16 -16 -15 -14 -13 -12 -12 -12 -13 -14 -14 -15 -15 -15 -15 -16 -16 -17 -17 -18 -18 -19 -19 -19 -20 -20 -20 -21 -21 -22 -22 -21 -20 -18 -17 -15 -14 -13 -12 -13 -17 -17 -15 -14 -14 -15 -16 -16 -17 -18 -21 -25 -29 -32 -34 -34 -29 -23 -17 -15 -17 -19 -18 -15 -11 -7 -4 -2 -1 -2 -4 -8 -11 -13 -11 -7 0 8 14 17 17 17 15 13 10 7 4 2 2 4 6 9 11 12 9 4 -0 -3 -3 -1 1 4 6 8 9 11 15 20 26 30 33 35 34 33 32 30 27 21 17 15 13 11 10 10 11 13 16 18 19 19 21 22 25 28 31 33 36 38 41 46 50 51 48 42 37 35 39 44 45 43 38 34 32 33 36 39 40 39 38 38 38 38 38 38 38 38 37 36 35 33 32 30 29 27 25 24 23 22 21 21 21 21 21 20 20 18 16 14 12 9 7 5 4 2 1 0 -1 -2 -2 -3 -3 -4 -4 -4 -3 -2 -1 -1 -0 -0 -1 -2 -3 -5 -6 -8 -9 -9 -9 -9 -9 -9 -9 -9 -10 -10 -11 -11 -12 -13 -14 -14 -14 -14 -14 -15 -16 -18 -20 -22 -23 -25 -25 -26 -26 -27 -28 -28 -28 -28 -27 -26 -26 -26 -27 -27 -27 -27 -27 -26 -26 -26 -25 -25 -25 -24 -24 -24 -23 -23 -23 -23 -23 -22 -21 -21 -20 -19 -19 -19 -19 -19 -20 -20 -20 -20 -20 -21 -22 -23 -24 -25 -25 -25 -24 -24 -23 -23 -23 -22 -22 -22 -21 -21 -20 -20 -19 -19 -20 -21 -22 -24 -25 -26 -27 -28 -28 -29 -29 -29 -28 -27 -26 -24 -23 -22 -21 -20 -19 -19 -18 -18 -18 -19 -20 -21 -21 -22 -22 -22 -23 -23 -23 -23 -23 -22 -22 -22 -22 -22 -23 -24 -25 -24 -22 -20 -18 -16 -16 -15 -15 -15 -15 -15 -15 -14 -12 -10 -7 -5 -5 -6 -9 -11 -12 -12 -12 -12 -13 -13 -13 -12 -11 -10 -9 -9 -8 -9 -10 -11 -13 -15 -16 -17 -18 -18 -18 -17 -17 -16 -15 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -15 -15 -15 -14 -14 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -15 -15 -15 -16 -16 -16 -17 -18 -18 -19 -20 -20 -21 -21 -21 -22 -22 -22 -21 -20 -18 -17 -15 -14 -13 -9 -15 -18 -18 -16 -14 -14 -14 -15 -15 -16 -17 -20 -24 -27 -30 -33 -32 -28 -21 -15 -13 -14 -17 -17 -15 -12 -8 -5 -2 -2 -3 -5 -8 -12 -14 -13 -9 -2 5 11 15 17 17 16 12 9 6 4 3 4 7 10 13 14 11 6 1 -1 -1 0 3 6 9 10 11 12 14 18 23 28 32 37 36 35 34 32 27 21 17 15 14 14 14 14 16 18 21 22 22 23 24 25 26 28 31 34 36 36 40 46 52 54 53 50 46 43 44 47 47 46 44 40 36 33 33 37 40 41 41 41 41 41 41 42 42 42 42 41 41 40 38 37 35 33 31 29 28 26 25 25 25 25 25 25 24 23 21 19 17 15 12 10 9 7 5 4 3 2 1 0 -0 -1 -1 -1 -1 -0 1 2 3 4 4 3 1 -1 -3 -5 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -8 -9 -10 -10 -11 -12 -12 -12 -11 -12 -13 -14 -16 -18 -19 -20 -21 -22 -23 -24 -25 -26 -26 -26 -25 -24 -23 -23 -24 -24 -24 -24 -25 -25 -25 -25 -24 -24 -24 -24 -23 -23 -22 -22 -22 -22 -22 -22 -21 -21 -20 -20 -19 -19 -19 -19 -19 -19 -19 -19 -19 -20 -20 -21 -22 -23 -24 -24 -24 -23 -23 -23 -22 -22 -22 -22 -21 -20 -20 -19 -18 -18 -18 -19 -20 -21 -23 -24 -25 -26 -27 -28 -29 -29 -29 -28 -27 -26 -25 -24 -23 -22 -21 -21 -20 -20 -20 -20 -20 -21 -21 -22 -22 -22 -22 -22 -22 -23 -23 -23 -22 -22 -22 -22 -23 -24 -25 -25 -24 -21 -18 -17 -16 -15 -15 -15 -15 -15 -15 -14 -13 -13 -10 -7 -4 -4 -6 -8 -10 -10 -10 -11 -11 -12 -12 -12 -11 -11 -10 -9 -8 -8 -8 -9 -11 -13 -14 -15 -16 -17 -17 -16 -16 -15 -14 -13 -13 -12 -12 -12 -12 -12 -12 -12 -12 -13 -13 -14 -13 -13 -13 -13 -13 -12 -12 -12 -12 -13 -13 -13 -14 -14 -14 -14 -15 -15 -15 -16 -17 -18 -19 -20 -21 -21 -21 -22 -22 -22 -22 -21 -20 -19 -17 -15 -14 -5 -10 -15 -17 -17 -16 -16 -16 -16 -16 -16 -16 -17 -19 -22 -25 -29 -32 -31 -26 -20 -13 -10 -11 -13 -14 -15 -14 -11 -8 -6 -4 -3 -5 -8 -12 -14 -15 -12 -6 0 6 11 14 14 13 11 9 7 5 4 6 9 11 13 11 6 2 -0 0 2 5 9 11 13 14 14 16 18 22 27 32 36 35 35 34 32 25 20 16 15 15 15 16 17 20 23 24 23 24 25 27 28 30 33 35 37 38 37 37 43 52 57 58 57 55 54 52 50 47 46 46 45 42 38 36 36 39 41 43 43 43 44 45 46 46 47 47 46 46 45 44 43 41 40 37 35 33 31 29 28 28 28 28 28 28 27 25 23 22 20 18 16 14 12 10 8 6 5 5 4 3 2 2 1 1 2 3 4 5 6 6 6 4 2 0 -2 -3 -4 -5 -5 -5 -5 -5 -4 -4 -5 -5 -6 -7 -8 -9 -9 -9 -9 -9 -9 -10 -12 -13 -14 -15 -16 -17 -18 -19 -21 -22 -23 -23 -23 -22 -21 -20 -20 -20 -20 -21 -21 -22 -22 -23 -23 -23 -23 -23 -22 -22 -21 -21 -21 -21 -21 -21 -21 -21 -20 -20 -20 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -20 -21 -22 -22 -23 -22 -22 -22 -22 -22 -22 -22 -22 -21 -20 -20 -19 -18 -18 -18 -18 -19 -20 -21 -23 -24 -26 -27 -28 -28 -29 -28 -28 -27 -27 -26 -25 -24 -23 -22 -21 -21 -21 -21 -22 -22 -22 -22 -22 -21 -21 -21 -22 -22 -23 -23 -22 -22 -22 -23 -23 -24 -25 -25 -24 -21 -18 -17 -16 -16 -15 -15 -15 -15 -14 -13 -13 -13 -13 -10 -7 -3 -3 -5 -7 -9 -9 -9 -10 -11 -11 -11 -11 -11 -10 -9 -8 -7 -7 -7 -9 -10 -12 -14 -15 -16 -16 -16 -15 -15 -13 -12 -11 -11 -10 -10 -10 -10 -10 -11 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -11 -11 -11 -12 -13 -13 -14 -14 -14 -14 -14 -14 -14 -15 -16 -18 -19 -20 -21 -21 -21 -22 -22 -22 -22 -21 -20 -18 -17 -15 -4 -5 -10 -13 -15 -15 -16 -16 -17 -17 -17 -17 -18 -18 -19 -21 -25 -28 -30 -30 -26 -20 -13 -9 -8 -10 -12 -14 -15 -14 -11 -8 -5 -4 -5 -8 -11 -14 -15 -14 -10 -5 0 5 9 11 11 10 9 7 6 6 7 8 9 9 6 3 1 2 5 8 11 13 14 15 16 17 18 22 27 33 33 34 35 33 29 22 18 16 16 17 17 17 20 23 24 25 25 25 26 27 30 34 37 40 41 40 39 40 47 57 62 61 60 60 58 53 47 41 40 42 47 51 52 48 42 38 39 43 45 45 47 48 49 50 51 51 51 51 50 49 48 47 45 43 40 38 35 33 31 31 31 31 31 31 30 29 27 26 25 23 22 19 17 14 12 10 9 8 7 6 6 5 5 4 5 5 6 7 8 8 7 6 5 3 2 0 -1 -2 -3 -3 -3 -2 -2 -2 -2 -3 -3 -4 -5 -6 -6 -7 -7 -7 -7 -8 -9 -10 -10 -11 -11 -12 -13 -15 -16 -18 -19 -20 -19 -19 -18 -18 -17 -17 -17 -17 -18 -19 -20 -20 -21 -21 -21 -21 -21 -20 -20 -19 -19 -18 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -18 -18 -18 -18 -18 -18 -19 -20 -21 -21 -21 -21 -21 -22 -22 -22 -23 -23 -22 -22 -21 -20 -19 -18 -18 -18 -18 -19 -20 -21 -22 -24 -25 -26 -27 -28 -28 -28 -28 -27 -26 -26 -25 -24 -23 -22 -22 -22 -22 -23 -23 -23 -23 -22 -21 -20 -20 -21 -21 -22 -22 -22 -22 -22 -22 -23 -24 -25 -24 -22 -19 -18 -16 -16 -16 -15 -15 -15 -15 -14 -13 -12 -13 -14 -13 -10 -5 -2 -3 -5 -7 -8 -8 -9 -10 -10 -11 -10 -10 -10 -9 -9 -8 -7 -6 -7 -8 -10 -12 -13 -14 -15 -15 -15 -14 -13 -12 -11 -10 -9 -9 -9 -9 -9 -9 -10 -11 -11 -12 -12 -12 -12 -11 -11 -10 -9 -9 -9 -10 -11 -12 -13 -13 -14 -14 -14 -13 -13 -13 -14 -14 -16 -17 -18 -19 -20 -20 -21 -21 -22 -22 -22 -21 -19 -18 -16 -10 -6 -6 -8 -10 -12 -13 -14 -15 -16 -17 -17 -18 -18 -18 -19 -21 -24 -27 -29 -30 -27 -22 -16 -10 -7 -7 -9 -13 -16 -16 -14 -10 -7 -6 -6 -7 -9 -11 -13 -13 -11 -8 -4 1 5 8 9 8 7 6 6 6 6 6 6 7 6 6 6 7 9 11 13 14 15 15 15 17 20 26 32 32 36 37 35 30 23 18 16 17 19 18 16 18 20 22 23 24 25 25 27 31 35 41 45 47 46 44 44 49 54 55 51 53 58 56 51 47 46 47 44 45 49 54 51 43 38 38 41 45 47 49 51 53 54 55 55 56 55 55 54 53 51 49 47 45 42 40 37 35 34 34 34 34 34 33 32 31 30 29 28 27 25 22 19 17 14 13 11 10 9 9 8 8 8 8 8 8 8 9 9 8 7 6 5 4 3 2 1 -0 -0 -0 0 0 1 1 0 -0 -1 -2 -3 -3 -4 -4 -5 -5 -6 -6 -7 -7 -7 -7 -8 -9 -10 -11 -13 -14 -14 -14 -15 -14 -14 -14 -14 -14 -15 -15 -16 -17 -17 -18 -18 -18 -18 -18 -18 -18 -17 -16 -16 -16 -16 -17 -17 -17 -17 -17 -17 -18 -18 -18 -18 -18 -18 -18 -18 -17 -17 -16 -16 -17 -18 -18 -19 -20 -20 -21 -21 -22 -22 -23 -24 -24 -23 -23 -22 -21 -20 -19 -18 -18 -18 -18 -19 -21 -22 -23 -24 -26 -27 -28 -28 -28 -28 -27 -26 -25 -24 -24 -23 -23 -23 -23 -23 -23 -23 -22 -21 -20 -19 -19 -19 -20 -20 -21 -20 -20 -20 -21 -22 -23 -23 -22 -20 -18 -16 -16 -16 -15 -15 -15 -14 -14 -14 -13 -12 -12 -13 -14 -13 -9 -4 -2 -3 -5 -7 -7 -8 -9 -9 -10 -10 -9 -9 -9 -9 -8 -7 -6 -6 -6 -7 -9 -11 -13 -14 -14 -14 -14 -13 -12 -11 -10 -9 -9 -8 -8 -8 -8 -9 -10 -10 -11 -12 -12 -12 -11 -9 -8 -7 -6 -7 -7 -9 -10 -11 -13 -13 -14 -14 -14 -13 -13 -13 -13 -14 -15 -16 -17 -18 -18 -19 -20 -20 -21 -21 -21 -20 -19 -17 -17 -12 -8 -7 -7 -8 -8 -10 -11 -13 -14 -14 -15 -17 -17 -18 -19 -20 -23 -26 -29 -30 -29 -25 -19 -13 -8 -5 -7 -12 -15 -17 -16 -13 -10 -8 -8 -8 -8 -8 -9 -10 -10 -8 -6 -1 2 5 6 6 6 6 5 5 5 4 6 7 9 10 11 11 13 13 14 14 13 13 13 16 20 26 30 37 40 39 34 28 22 18 18 19 18 18 20 22 23 23 24 24 25 28 33 38 42 45 45 45 46 47 47 48 46 44 45 49 50 49 48 48 48 45 44 46 50 52 48 44 43 42 40 42 47 52 54 56 58 58 59 59 59 58 57 55 53 51 49 47 44 42 40 38 37 37 37 37 36 36 35 34 33 33 31 29 27 25 22 19 17 15 13 12 11 11 11 11 11 11 10 10 9 9 9 8 8 7 6 5 4 3 3 2 2 2 3 3 3 3 2 2 1 -0 -1 -2 -2 -2 -3 -3 -3 -3 -3 -3 -3 -4 -4 -5 -6 -7 -8 -8 -8 -9 -9 -10 -10 -10 -11 -12 -13 -14 -14 -15 -15 -16 -16 -16 -16 -16 -16 -15 -15 -14 -13 -13 -13 -14 -14 -14 -15 -15 -16 -16 -16 -17 -17 -17 -17 -17 -17 -16 -15 -15 -15 -15 -16 -17 -18 -19 -19 -20 -21 -22 -23 -24 -24 -24 -24 -23 -22 -21 -20 -19 -19 -18 -18 -19 -19 -20 -22 -23 -24 -26 -27 -28 -28 -28 -28 -27 -26 -25 -24 -23 -23 -23 -23 -23 -23 -22 -21 -20 -19 -19 -19 -18 -18 -18 -18 -18 -18 -19 -19 -20 -21 -20 -19 -17 -16 -15 -15 -15 -14 -14 -14 -14 -14 -14 -14 -13 -12 -12 -13 -14 -12 -6 -3 -2 -4 -5 -6 -7 -7 -8 -9 -9 -9 -9 -9 -9 -8 -7 -6 -5 -5 -5 -6 -8 -10 -12 -13 -13 -13 -12 -12 -11 -10 -10 -9 -8 -8 -7 -7 -8 -9 -10 -10 -11 -11 -11 -10 -8 -6 -5 -4 -4 -5 -6 -7 -9 -11 -12 -14 -15 -15 -14 -14 -13 -13 -13 -13 -14 -15 -15 -16 -17 -17 -18 -19 -20 -21 -21 -20 -18 -21 -18 -14 -11 -8 -7 -6 -6 -7 -8 -10 -10 -11 -13 -15 -16 -17 -18 -20 -22 -25 -27 -30 -30 -28 -23 -17 -10 -4 -6 -10 -14 -17 -16 -14 -12 -10 -10 -9 -8 -8 -8 -8 -8 -8 -6 -3 -1 1 2 3 4 5 4 3 3 4 6 9 11 14 15 16 16 15 14 12 11 10 10 13 18 25 32 37 38 36 31 26 23 22 21 21 21 24 26 27 26 27 27 28 30 34 37 40 42 43 44 46 47 46 44 43 42 42 44 46 48 49 50 50 48 46 45 46 49 51 50 48 46 43 41 44 49 54 57 59 60 61 62 62 62 60 59 57 55 52 50 48 46 44 42 41 41 41 40 40 39 38 38 37 36 35 34 32 30 27 24 21 18 16 15 14 14 15 14 14 13 12 11 11 10 9 9 9 8 7 7 6 6 5 5 4 4 4 5 5 5 5 4 3 2 1 0 -0 0 0 1 1 1 2 1 1 1 -0 -1 -1 -1 -2 -2 -2 -3 -3 -4 -5 -6 -7 -8 -9 -11 -12 -12 -13 -13 -13 -13 -13 -14 -14 -14 -13 -12 -11 -10 -10 -10 -10 -11 -12 -13 -13 -14 -14 -15 -16 -16 -17 -17 -16 -15 -15 -14 -13 -13 -14 -15 -16 -17 -18 -19 -20 -21 -23 -24 -24 -24 -24 -24 -23 -23 -22 -20 -19 -18 -18 -18 -18 -19 -20 -21 -23 -24 -26 -27 -28 -29 -29 -28 -27 -25 -24 -24 -23 -23 -23 -23 -22 -21 -20 -19 -18 -18 -18 -17 -17 -17 -16 -16 -16 -17 -17 -18 -18 -17 -17 -16 -15 -15 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -10 -5 -3 -3 -4 -5 -6 -6 -7 -8 -8 -8 -8 -8 -8 -8 -7 -6 -5 -4 -3 -4 -6 -7 -9 -10 -11 -11 -12 -11 -11 -11 -10 -10 -9 -8 -8 -8 -8 -8 -9 -9 -10 -10 -10 -9 -8 -6 -4 -3 -2 -2 -3 -4 -6 -8 -10 -12 -14 -15 -15 -15 -15 -14 -13 -13 -13 -13 -13 -14 -14 -15 -16 -17 -19 -20 -20 -20 -19 -21 -22 -20 -17 -14 -10 -8 -6 -5 -5 -6 -7 -8 -9 -10 -12 -14 -15 -16 -18 -19 -22 -24 -28 -30 -30 -27 -20 -12 -6 -5 -8 -12 -15 -15 -12 -11 -10 -10 -10 -9 -8 -8 -9 -9 -8 -7 -6 -5 -3 -2 0 1 2 1 0 1 2 6 10 13 16 18 18 17 15 13 10 7 6 7 10 17 22 27 30 30 26 24 24 24 25 26 26 28 30 30 30 32 32 32 32 33 35 35 36 38 41 43 44 43 42 42 41 41 43 45 47 48 50 50 49 48 48 47 47 48 49 49 47 46 44 45 48 52 57 60 61 62 63 64 64 63 62 60 58 56 54 52 50 48 47 46 45 44 44 43 43 42 41 40 39 38 37 36 34 32 29 26 22 20 18 17 17 17 17 16 15 14 13 12 11 11 10 9 9 9 8 8 8 7 7 7 6 6 7 7 8 7 7 5 4 3 2 2 2 3 4 5 6 7 7 6 5 5 4 4 4 4 3 3 3 2 1 0 -1 -3 -4 -5 -7 -8 -9 -10 -11 -11 -11 -11 -11 -12 -12 -12 -11 -9 -8 -7 -6 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -16 -16 -15 -14 -13 -12 -12 -12 -13 -13 -14 -16 -17 -18 -20 -21 -23 -23 -24 -24 -24 -24 -23 -22 -21 -20 -19 -18 -18 -18 -18 -19 -20 -21 -23 -24 -26 -27 -29 -29 -29 -28 -26 -25 -24 -24 -23 -23 -22 -21 -20 -19 -18 -18 -17 -17 -16 -16 -15 -14 -14 -15 -15 -15 -16 -16 -16 -16 -16 -15 -14 -13 -12 -12 -12 -12 -12 -12 -13 -13 -13 -13 -13 -12 -12 -13 -12 -9 -4 -2 -3 -4 -5 -6 -6 -7 -7 -7 -7 -8 -8 -8 -7 -6 -5 -4 -3 -2 -3 -4 -6 -7 -9 -10 -10 -11 -11 -11 -11 -11 -10 -9 -9 -9 -9 -9 -9 -9 -9 -10 -10 -9 -8 -7 -5 -3 -2 -0 0 -1 -3 -5 -7 -9 -11 -13 -14 -15 -16 -16 -15 -14 -13 -13 -12 -12 -13 -13 -14 -15 -16 -18 -19 -19 -19 -19 -20 -21 -20 -19 -16 -14 -11 -8 -7 -7 -7 -7 -7 -7 -7 -9 -11 -13 -14 -15 -16 -18 -20 -24 -28 -29 -28 -22 -14 -8 -5 -7 -10 -12 -11 -10 -9 -10 -10 -10 -10 -9 -9 -9 -9 -9 -9 -8 -8 -6 -4 -3 -2 -2 -3 -3 -3 -1 3 8 13 16 17 16 15 12 9 5 3 3 5 8 11 14 17 18 15 14 16 20 25 28 30 31 31 32 33 36 35 34 33 32 30 28 29 31 35 38 40 40 40 40 40 40 43 45 46 47 48 48 49 51 51 50 47 46 48 49 49 48 49 49 49 50 52 56 60 63 65 66 66 66 65 63 61 59 58 56 54 52 50 49 49 48 48 47 47 46 45 44 43 42 41 40 38 36 34 30 27 24 22 20 20 19 19 18 17 16 15 14 13 12 12 11 10 10 10 10 10 10 9 9 8 8 9 9 9 9 9 8 6 5 4 4 4 5 7 8 10 11 11 11 11 10 9 8 8 8 8 8 7 7 6 5 3 2 1 -1 -2 -4 -5 -7 -8 -8 -8 -8 -9 -9 -10 -10 -9 -8 -6 -4 -3 -3 -3 -4 -5 -7 -8 -10 -11 -12 -13 -14 -15 -15 -15 -14 -13 -12 -11 -11 -11 -12 -13 -14 -15 -16 -18 -20 -21 -22 -23 -24 -24 -23 -23 -22 -22 -20 -19 -18 -17 -17 -17 -17 -18 -19 -21 -22 -24 -26 -28 -29 -29 -28 -27 -26 -25 -24 -23 -23 -22 -20 -19 -18 -17 -17 -16 -16 -15 -14 -14 -13 -13 -13 -14 -14 -15 -15 -16 -16 -16 -16 -15 -13 -12 -11 -10 -11 -11 -11 -12 -12 -13 -13 -13 -13 -12 -12 -13 -11 -8 -3 -2 -3 -4 -5 -5 -6 -6 -7 -7 -7 -7 -7 -7 -6 -5 -4 -2 -1 -1 -1 -3 -4 -6 -8 -9 -10 -11 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -9 -9 -8 -7 -5 -3 -1 1 1 0 -1 -3 -5 -7 -10 -12 -13 -15 -16 -16 -16 -15 -14 -12 -12 -12 -12 -12 -13 -14 -15 -17 -18 -18 -17 -17 -18 -19 -19 -19 -18 -17 -15 -13 -12 -11 -10 -9 -8 -8 -8 -10 -11 -12 -14 -14 -14 -15 -17 -21 -25 -28 -28 -23 -15 -8 -5 -5 -8 -10 -10 -10 -10 -10 -11 -10 -10 -9 -8 -8 -8 -9 -9 -9 -9 -7 -6 -5 -5 -5 -6 -7 -7 -5 -2 3 7 10 10 9 8 6 5 4 3 2 1 2 4 5 5 2 2 4 9 15 23 27 29 29 30 32 34 33 31 30 29 24 21 22 26 30 33 35 36 37 38 38 39 41 44 46 47 47 48 50 53 54 53 50 48 51 53 53 52 52 52 52 51 51 53 57 60 63 66 67 67 67 65 64 62 61 59 57 56 54 53 52 51 51 50 50 49 48 47 46 45 44 43 42 40 38 35 31 28 26 24 23 22 21 20 19 18 17 16 15 14 13 12 11 11 11 11 11 12 12 11 11 11 11 11 11 11 11 10 8 7 6 5 5 6 8 10 12 14 15 16 15 15 14 13 12 12 11 11 11 10 9 8 7 6 5 4 3 1 -1 -3 -4 -4 -5 -5 -6 -7 -7 -7 -7 -6 -4 -2 -1 0 0 -0 -1 -3 -5 -7 -8 -10 -11 -12 -13 -14 -14 -13 -13 -12 -11 -10 -10 -11 -11 -12 -13 -15 -16 -18 -20 -21 -22 -23 -23 -23 -22 -22 -21 -20 -19 -18 -17 -16 -15 -15 -16 -17 -19 -20 -22 -24 -26 -28 -29 -29 -28 -27 -26 -25 -24 -22 -21 -20 -19 -18 -17 -16 -16 -15 -14 -13 -13 -12 -12 -13 -13 -14 -14 -15 -16 -16 -17 -16 -16 -14 -12 -11 -10 -10 -10 -10 -11 -11 -12 -12 -13 -13 -12 -12 -12 -12 -11 -6 -3 -3 -4 -4 -5 -5 -6 -6 -7 -7 -6 -6 -6 -6 -5 -4 -2 -1 -0 0 0 -1 -3 -6 -8 -9 -10 -11 -11 -11 -11 -10 -11 -11 -12 -12 -12 -11 -11 -11 -10 -10 -9 -9 -8 -7 -5 -3 -0 1 2 1 0 -2 -4 -6 -8 -10 -12 -13 -15 -16 -16 -15 -14 -12 -12 -11 -11 -11 -12 -13 -14 -15 -16 -18 -17 -16 -16 -16 -17 -18 -18 -18 -17 -16 -15 -14 -13 -12 -12 -12 -12 -12 -13 -14 -15 -14 -13 -13 -15 -18 -22 -26 -26 -22 -15 -8 -3 -4 -7 -10 -11 -11 -11 -11 -11 -10 -8 -7 -7 -8 -8 -8 -8 -8 -8 -7 -7 -7 -7 -8 -9 -10 -11 -10 -9 -6 -3 -1 1 3 6 7 6 4 -0 -3 -3 -2 -1 -2 -4 -5 -4 -2 2 9 17 21 23 25 27 27 25 24 25 24 19 17 20 23 26 29 31 34 36 38 39 39 40 42 45 48 49 49 51 54 56 56 53 52 55 59 59 57 55 55 55 56 57 57 55 56 59 63 65 67 68 67 66 64 63 62 60 59 57 56 55 54 53 53 53 52 51 50 49 49 48 47 45 44 41 38 35 33 30 28 26 24 23 22 21 20 19 18 17 16 15 14 13 13 13 13 13 13 14 14 14 14 14 14 14 14 13 12 11 10 8 7 7 7 8 10 13 15 17 18 19 19 18 17 16 16 15 15 14 13 12 11 10 9 9 8 7 6 4 2 1 -0 -1 -2 -2 -3 -4 -4 -4 -3 -2 -1 1 2 3 3 2 0 -2 -4 -6 -8 -9 -10 -11 -12 -13 -13 -12 -11 -11 -10 -10 -10 -10 -11 -12 -14 -15 -17 -19 -20 -21 -22 -22 -22 -22 -21 -20 -19 -18 -17 -16 -15 -14 -14 -14 -15 -16 -18 -20 -22 -24 -26 -28 -28 -28 -28 -27 -26 -24 -23 -21 -20 -19 -18 -17 -16 -15 -14 -13 -13 -12 -12 -12 -12 -13 -13 -14 -15 -16 -16 -17 -17 -17 -16 -14 -12 -10 -9 -9 -10 -10 -10 -11 -11 -12 -12 -12 -12 -12 -12 -13 -11 -6 -4 -3 -4 -4 -5 -5 -6 -6 -6 -6 -6 -5 -5 -5 -4 -3 -1 0 1 2 1 -1 -3 -6 -8 -9 -10 -10 -10 -10 -10 -11 -12 -12 -13 -13 -13 -12 -12 -11 -10 -10 -9 -9 -8 -7 -5 -2 0 2 3 3 1 -0 -2 -4 -6 -7 -9 -11 -12 -14 -15 -15 -14 -13 -12 -11 -11 -11 -11 -12 -13 -14 -20 -18 -16 -15 -15 -15 -16 -17 -17 -18 -18 -18 -16 -16 -16 -16 -16 -16 -16 -16 -17 -17 -17 -16 -14 -13 -13 -15 -18 -22 -24 -21 -14 -7 -2 -4 -7 -11 -13 -13 -13 -12 -10 -9 -7 -6 -6 -6 -6 -6 -6 -7 -7 -7 -7 -7 -8 -8 -9 -11 -13 -15 -15 -15 -14 -11 -8 -3 2 4 5 3 1 -3 -6 -8 -7 -5 -4 -5 -6 -6 -2 5 11 15 17 18 17 17 17 18 18 17 18 20 24 26 28 30 32 35 39 42 44 44 45 46 48 51 52 54 55 57 58 57 57 62 65 64 61 58 56 56 57 59 61 62 62 59 56 58 65 68 69 67 66 65 64 63 62 61 59 58 57 56 55 55 54 54 53 52 52 51 50 49 47 45 42 39 37 34 32 29 27 25 24 22 21 20 19 18 16 15 15 14 14 14 14 15 15 15 16 16 17 18 18 17 17 16 15 14 13 11 9 8 7 8 10 12 14 17 18 20 20 20 20 20 19 19 19 18 17 16 14 13 13 12 12 12 11 9 7 5 4 3 2 1 0 0 -0 -0 -0 0 1 2 4 5 5 5 4 2 -1 -3 -5 -7 -8 -9 -10 -11 -11 -11 -11 -10 -9 -9 -9 -9 -10 -11 -13 -15 -16 -18 -19 -20 -21 -21 -21 -20 -20 -19 -18 -17 -16 -15 -14 -13 -12 -12 -12 -13 -15 -16 -18 -21 -23 -25 -27 -28 -28 -27 -26 -25 -23 -21 -20 -19 -18 -17 -16 -15 -14 -13 -13 -12 -12 -12 -12 -13 -13 -14 -14 -15 -16 -17 -17 -17 -17 -16 -14 -12 -10 -9 -9 -10 -10 -10 -10 -11 -12 -12 -12 -12 -12 -14 -14 -10 -6 -4 -4 -4 -5 -5 -5 -6 -6 -6 -5 -4 -4 -4 -4 -3 -1 0 1 2 2 1 -1 -4 -6 -8 -9 -9 -9 -9 -9 -9 -11 -12 -13 -14 -14 -13 -12 -11 -10 -10 -9 -9 -9 -8 -6 -4 -2 1 3 4 4 3 1 -0 -2 -3 -5 -6 -8 -10 -13 -14 -15 -14 -13 -12 -11 -10 -10 -11 -12 -12 -18 -17 -16 -14 -14 -14 -14 -15 -16 -17 -18 -18 -17 -16 -17 -18 -19 -19 -20 -20 -20 -21 -21 -20 -19 -16 -14 -12 -11 -14 -18 -20 -19 -14 -6 -2 -3 -7 -11 -14 -14 -13 -12 -10 -7 -6 -6 -6 -5 -5 -4 -5 -5 -6 -7 -7 -7 -8 -8 -9 -11 -14 -17 -19 -19 -18 -17 -14 -10 -6 -2 1 3 3 0 -2 -3 -5 -7 -10 -12 -13 -10 -3 4 8 11 13 14 15 17 18 19 19 21 24 28 31 31 30 32 35 37 39 42 45 46 47 49 52 53 53 55 57 59 58 61 67 70 68 62 55 53 54 57 60 63 65 67 67 65 61 62 66 70 69 67 66 66 65 64 64 63 61 59 58 57 56 56 56 56 55 54 54 53 51 50 48 45 43 41 38 36 34 31 29 27 25 23 21 20 18 17 16 15 15 15 15 16 16 16 17 17 18 19 20 21 21 20 20 19 18 17 15 13 10 9 9 9 11 13 15 17 19 20 21 21 21 22 22 22 22 21 20 19 18 17 17 16 16 15 14 12 10 9 7 6 5 4 4 4 3 3 3 3 4 5 6 7 8 7 6 3 0 -3 -5 -6 -8 -9 -9 -10 -10 -10 -9 -8 -8 -8 -8 -9 -11 -12 -14 -15 -17 -18 -19 -20 -20 -20 -20 -19 -18 -17 -16 -15 -14 -13 -12 -11 -10 -10 -11 -11 -13 -15 -17 -20 -22 -24 -26 -27 -27 -26 -24 -23 -21 -20 -19 -19 -18 -17 -16 -15 -14 -14 -13 -13 -13 -13 -13 -13 -13 -14 -15 -16 -17 -17 -17 -17 -17 -16 -14 -12 -10 -10 -10 -10 -9 -10 -10 -11 -12 -12 -12 -12 -14 -15 -13 -10 -6 -5 -4 -4 -5 -5 -5 -6 -5 -5 -4 -3 -3 -3 -2 -1 -0 1 2 2 2 0 -2 -4 -7 -8 -8 -8 -7 -7 -8 -9 -11 -12 -13 -13 -13 -12 -10 -9 -9 -9 -9 -9 -9 -8 -6 -4 -2 1 4 5 5 5 3 2 0 -1 -2 -3 -5 -8 -11 -13 -15 -15 -14 -12 -11 -10 -10 -10 -11 -15 -15 -14 -13 -12 -12 -12 -12 -13 -14 -15 -15 -15 -15 -15 -16 -18 -19 -20 -21 -22 -23 -24 -25 -25 -24 -21 -17 -12 -10 -11 -14 -17 -18 -13 -5 -1 -0 -4 -9 -11 -12 -12 -11 -9 -8 -7 -6 -6 -6 -5 -4 -4 -5 -6 -7 -7 -8 -8 -9 -10 -13 -15 -17 -18 -18 -18 -18 -17 -15 -12 -9 -4 -1 2 3 2 -1 -6 -11 -16 -19 -17 -12 -5 1 6 10 14 17 20 22 23 23 23 27 31 34 33 33 35 36 38 39 41 44 46 48 50 52 53 54 55 57 59 63 71 75 74 69 63 57 56 57 57 57 59 65 68 70 68 64 63 68 72 71 69 68 68 67 67 66 65 64 62 61 59 58 58 58 58 58 57 56 55 54 52 51 49 47 45 43 41 38 35 33 30 27 25 23 21 19 18 17 16 16 16 16 16 17 17 17 18 19 21 22 23 24 23 23 23 22 21 20 18 15 12 11 10 11 12 14 16 17 18 19 20 21 22 23 24 25 25 24 23 22 21 21 21 20 20 19 17 16 14 12 11 9 8 8 7 7 7 6 6 6 7 8 9 10 10 9 7 4 1 -2 -4 -6 -7 -8 -8 -8 -8 -8 -8 -7 -7 -7 -8 -10 -11 -12 -13 -15 -16 -17 -19 -20 -20 -19 -18 -17 -16 -16 -15 -14 -13 -12 -10 -9 -9 -8 -9 -10 -12 -14 -16 -18 -21 -23 -25 -25 -25 -24 -22 -21 -20 -19 -19 -19 -18 -18 -17 -16 -15 -14 -14 -14 -13 -13 -13 -14 -14 -14 -15 -16 -17 -17 -17 -16 -16 -15 -13 -11 -10 -10 -10 -10 -10 -10 -10 -11 -12 -12 -12 -14 -16 -15 -13 -10 -7 -5 -4 -5 -5 -5 -5 -5 -4 -3 -2 -2 -2 -2 -1 -0 1 2 3 3 2 -0 -2 -5 -6 -7 -7 -6 -6 -7 -8 -10 -11 -13 -13 -12 -11 -10 -9 -9 -9 -9 -9 -9 -9 -8 -7 -4 -1 2 4 6 7 6 5 4 4 3 1 -0 -3 -6 -9 -12 -14 -15 -14 -12 -11 -9 -9 -9 -14 -14 -13 -12 -12 -11 -11 -10 -10 -11 -11 -11 -12 -12 -12 -13 -15 -16 -18 -19 -20 -21 -23 -24 -26 -27 -26 -24 -20 -15 -12 -11 -13 -15 -16 -12 -6 -0 2 1 -2 -5 -8 -9 -8 -8 -7 -7 -7 -6 -6 -5 -4 -4 -4 -5 -7 -8 -9 -10 -11 -12 -15 -16 -17 -16 -16 -17 -18 -19 -19 -19 -16 -11 -6 -2 1 1 -4 -9 -15 -18 -20 -19 -15 -8 -1 5 12 17 22 25 26 26 26 28 32 35 37 37 38 39 40 41 42 46 48 50 52 53 55 55 56 58 63 72 77 78 74 68 61 59 58 59 59 58 59 61 64 67 70 66 65 68 72 73 71 70 69 69 68 68 67 66 64 63 61 60 60 60 60 60 59 58 57 56 55 53 52 50 48 46 44 42 40 37 34 31 28 25 22 20 19 17 17 16 17 17 17 17 17 17 18 19 21 23 24 25 25 25 25 25 25 24 22 20 17 15 14 13 13 14 15 16 17 18 18 19 20 22 24 25 26 27 27 26 26 25 25 25 24 24 22 21 20 18 17 15 14 13 12 11 10 9 9 9 9 10 11 12 13 12 11 8 5 1 -1 -4 -5 -6 -7 -7 -7 -7 -7 -6 -6 -7 -7 -8 -10 -11 -11 -12 -13 -15 -17 -19 -19 -19 -18 -17 -16 -15 -15 -14 -13 -12 -10 -9 -8 -7 -7 -8 -9 -11 -12 -15 -17 -20 -22 -23 -23 -22 -21 -19 -18 -18 -18 -19 -19 -19 -19 -18 -17 -16 -15 -14 -14 -14 -14 -14 -14 -14 -14 -15 -16 -16 -16 -15 -15 -15 -14 -13 -11 -11 -11 -11 -10 -10 -10 -11 -11 -11 -12 -13 -16 -16 -15 -13 -10 -7 -5 -4 -5 -5 -5 -5 -4 -3 -2 -1 -1 -1 -1 0 1 2 3 3 3 1 -1 -3 -4 -5 -5 -5 -5 -6 -7 -9 -10 -12 -12 -12 -10 -9 -8 -9 -9 -10 -10 -11 -11 -10 -9 -8 -5 -2 2 5 7 8 7 7 7 7 6 5 3 0 -3 -7 -10 -13 -14 -14 -12 -10 -9 -9 -15 -15 -14 -13 -13 -12 -11 -10 -9 -9 -10 -9 -9 -9 -9 -10 -12 -13 -15 -16 -17 -18 -19 -20 -22 -23 -25 -25 -24 -21 -18 -15 -14 -14 -16 -16 -13 -8 -1 4 4 2 -0 -3 -4 -5 -6 -6 -6 -6 -6 -6 -5 -3 -3 -3 -6 -8 -10 -11 -12 -13 -15 -16 -16 -16 -15 -16 -17 -19 -21 -23 -23 -21 -17 -12 -8 -5 -5 -7 -11 -14 -18 -21 -20 -16 -9 -2 5 13 18 22 23 24 26 28 31 36 39 40 40 41 42 44 46 48 51 53 54 56 58 58 59 60 65 71 73 71 68 64 60 59 60 60 60 61 61 62 63 65 67 67 68 71 72 73 73 71 71 70 70 69 69 67 66 65 64 63 62 62 62 62 62 60 59 58 56 55 54 52 51 49 47 46 44 41 38 35 31 28 25 22 20 18 18 17 17 18 18 18 17 17 18 19 20 22 23 24 25 26 26 27 27 27 26 25 23 20 18 17 17 17 17 18 18 18 18 18 18 20 21 24 26 27 28 29 29 29 28 28 28 27 27 26 25 24 23 22 21 19 17 15 14 13 12 12 12 12 13 14 15 15 14 13 10 6 2 -1 -3 -4 -5 -6 -6 -7 -7 -6 -6 -6 -7 -7 -8 -9 -9 -10 -11 -13 -15 -17 -19 -19 -19 -18 -17 -16 -15 -15 -14 -12 -11 -9 -8 -7 -6 -6 -7 -8 -10 -11 -14 -16 -19 -21 -21 -21 -19 -18 -17 -16 -17 -17 -19 -20 -21 -20 -19 -17 -16 -15 -14 -13 -13 -13 -14 -14 -13 -14 -14 -15 -15 -14 -14 -14 -14 -13 -12 -11 -11 -11 -11 -10 -10 -10 -10 -11 -11 -13 -15 -16 -16 -15 -13 -10 -7 -5 -4 -5 -5 -5 -4 -3 -2 -1 -0 -0 0 1 2 3 3 4 4 3 1 -1 -3 -4 -4 -4 -4 -5 -6 -8 -10 -11 -11 -11 -10 -8 -8 -8 -9 -11 -12 -12 -13 -13 -12 -11 -9 -6 -2 2 5 7 8 8 8 8 9 9 8 6 3 -0 -4 -7 -11 -13 -13 -11 -9 -8 -16 -16 -16 -15 -15 -14 -14 -14 -14 -14 -13 -11 -10 -10 -10 -10 -11 -12 -12 -13 -14 -15 -16 -16 -17 -18 -20 -21 -22 -22 -21 -18 -16 -15 -16 -18 -18 -16 -10 -3 4 8 8 6 2 -1 -2 -3 -4 -5 -5 -5 -5 -4 -3 -3 -4 -6 -8 -10 -13 -14 -15 -15 -16 -15 -14 -14 -15 -17 -19 -22 -24 -24 -23 -21 -18 -15 -12 -11 -11 -13 -15 -16 -17 -16 -13 -8 -2 4 9 11 13 15 19 24 29 34 39 41 42 43 45 47 48 51 53 55 56 58 61 62 62 62 63 64 64 63 62 61 60 60 61 62 62 62 63 63 64 65 66 66 67 68 69 68 66 67 70 71 71 71 70 69 68 66 65 65 64 65 65 65 64 63 61 60 58 57 56 54 53 51 49 48 46 45 43 40 36 32 28 25 22 20 19 19 18 19 19 18 18 17 17 18 18 20 21 23 24 24 25 26 27 28 28 28 26 25 23 22 21 21 21 21 21 21 20 19 18 18 19 21 23 25 27 28 29 29 29 29 29 29 29 28 28 28 28 28 27 25 23 21 19 18 16 16 15 15 15 16 17 17 17 16 14 11 7 3 0 -2 -3 -4 -5 -5 -6 -6 -6 -6 -7 -7 -7 -7 -7 -8 -9 -11 -13 -15 -17 -19 -19 -18 -18 -17 -16 -16 -15 -13 -12 -10 -9 -7 -6 -6 -6 -6 -7 -9 -10 -13 -15 -18 -19 -19 -18 -16 -15 -15 -15 -16 -17 -19 -21 -21 -20 -19 -17 -15 -14 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -13 -13 -13 -14 -14 -13 -12 -12 -11 -11 -11 -10 -10 -10 -10 -11 -12 -14 -16 -16 -15 -14 -13 -10 -7 -5 -4 -5 -5 -4 -3 -2 -1 -0 0 1 1 2 3 4 4 4 4 2 0 -1 -2 -3 -3 -4 -5 -6 -7 -9 -10 -11 -10 -9 -8 -7 -8 -10 -11 -13 -13 -14 -15 -15 -14 -12 -10 -6 -3 1 4 6 7 7 8 8 9 9 8 7 5 2 -2 -6 -10 -13 -12 -10 -8 -16 -16 -16 -16 -16 -16 -16 -17 -17 -17 -17 -15 -14 -13 -13 -13 -13 -13 -12 -12 -13 -13 -14 -14 -15 -15 -16 -18 -20 -22 -21 -19 -17 -16 -17 -18 -20 -20 -18 -12 -3 6 11 11 8 5 3 2 -0 -2 -3 -3 -4 -3 -3 -3 -3 -3 -5 -8 -11 -12 -13 -13 -14 -14 -13 -12 -13 -15 -18 -20 -21 -22 -23 -23 -23 -22 -21 -21 -20 -17 -14 -12 -10 -10 -10 -8 -5 -1 0 0 1 4 9 14 20 26 31 36 40 43 45 48 50 52 55 56 55 56 60 61 61 60 59 58 59 60 61 61 60 61 62 62 63 63 63 64 66 67 67 66 65 65 64 63 62 65 70 73 72 71 71 70 69 68 67 66 66 66 67 67 66 65 64 62 61 59 58 56 54 52 50 49 48 47 46 44 41 37 32 28 25 22 20 20 20 20 20 20 19 18 17 17 17 17 19 20 21 22 23 24 25 26 28 28 28 27 26 26 25 26 26 26 26 25 24 22 21 20 20 20 22 23 24 25 26 27 27 28 28 28 28 27 27 28 30 32 33 31 29 26 24 22 21 20 19 18 19 19 20 20 20 20 18 16 12 8 4 2 -0 -1 -2 -3 -4 -5 -5 -6 -6 -6 -6 -6 -6 -6 -7 -9 -10 -13 -15 -17 -18 -18 -18 -18 -17 -17 -16 -14 -13 -11 -10 -8 -7 -6 -5 -5 -5 -6 -8 -10 -12 -15 -17 -17 -17 -15 -14 -13 -13 -14 -15 -17 -19 -21 -21 -20 -18 -16 -14 -12 -12 -12 -13 -13 -13 -13 -13 -13 -14 -13 -12 -12 -12 -13 -13 -12 -12 -11 -11 -11 -11 -10 -10 -10 -10 -11 -13 -16 -17 -15 -14 -13 -12 -10 -7 -5 -5 -4 -4 -3 -2 -2 -1 -0 1 2 3 3 4 5 5 5 3 2 0 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -9 -8 -7 -7 -8 -10 -11 -13 -14 -15 -16 -16 -17 -15 -13 -11 -7 -4 -1 2 4 5 6 6 7 8 8 8 7 5 3 -1 -6 -11 -12 -11 -9 -21 -19 -17 -16 -16 -17 -17 -18 -19 -19 -18 -17 -17 -17 -16 -16 -16 -16 -16 -15 -14 -14 -14 -14 -14 -15 -15 -16 -19 -21 -21 -19 -17 -16 -16 -17 -18 -20 -20 -18 -13 -3 5 11 13 12 10 8 5 3 0 -2 -2 -2 -1 -1 -1 -2 -3 -5 -7 -8 -9 -11 -11 -11 -10 -10 -10 -13 -16 -19 -20 -20 -21 -22 -22 -23 -24 -26 -26 -25 -22 -17 -12 -9 -6 -3 -0 2 2 1 -1 -1 1 3 5 9 14 22 30 38 44 48 50 53 56 55 52 49 49 50 51 53 52 53 55 57 59 60 60 61 62 62 63 64 65 66 68 70 72 70 68 66 64 64 65 68 71 71 70 70 71 71 70 69 68 68 68 68 68 68 68 67 66 65 63 62 60 58 56 54 52 50 49 48 48 47 45 41 37 32 28 24 22 21 21 21 21 21 20 19 18 16 15 16 16 17 19 19 20 21 22 24 25 26 27 27 27 27 28 29 30 30 31 30 29 27 25 24 22 22 22 23 23 23 23 23 23 23 23 23 23 23 24 25 28 31 34 35 35 33 30 27 26 24 23 23 22 23 23 23 23 23 22 20 17 14 9 6 4 2 1 0 -1 -2 -3 -4 -5 -5 -4 -4 -4 -5 -5 -6 -8 -10 -12 -14 -16 -17 -17 -17 -17 -17 -16 -15 -13 -12 -10 -9 -8 -6 -5 -4 -4 -4 -5 -7 -9 -12 -14 -15 -15 -14 -13 -12 -12 -12 -13 -15 -17 -19 -20 -20 -19 -17 -14 -12 -11 -12 -13 -13 -13 -13 -13 -13 -13 -13 -12 -11 -11 -12 -13 -12 -12 -11 -11 -11 -11 -10 -10 -10 -10 -11 -12 -15 -17 -16 -14 -13 -13 -13 -11 -8 -6 -4 -3 -3 -3 -2 -2 -1 -0 1 2 4 5 6 6 6 5 3 2 0 -1 -3 -4 -5 -6 -7 -8 -9 -9 -8 -7 -6 -6 -7 -9 -11 -13 -14 -15 -16 -17 -18 -17 -16 -14 -12 -8 -5 -2 0 2 3 4 4 5 6 6 6 6 4 2 -2 -8 -11 -11 -9 -20 -20 -17 -17 -18 -18 -18 -19 -19 -19 -18 -18 -18 -18 -18 -17 -18 -19 -19 -18 -17 -16 -15 -15 -15 -15 -16 -17 -19 -22 -22 -20 -17 -15 -15 -15 -15 -16 -17 -19 -18 -13 -4 5 12 15 14 12 9 5 2 -0 0 1 1 0 -1 0 -1 -3 -5 -7 -9 -10 -10 -8 -8 -7 -9 -12 -15 -17 -18 -21 -22 -23 -23 -24 -25 -26 -27 -26 -25 -23 -20 -17 -12 -8 -3 1 4 6 7 8 8 6 4 2 3 7 14 23 31 37 40 44 48 50 49 47 43 39 37 38 41 45 49 53 55 58 59 60 61 62 64 65 66 68 73 79 82 79 73 68 66 66 68 69 68 66 64 65 68 69 70 70 69 69 69 69 69 70 70 69 68 67 66 65 63 61 58 56 54 51 50 49 48 48 47 45 41 36 31 27 24 22 22 22 22 22 21 20 19 17 16 15 16 16 17 18 18 19 20 21 22 23 24 25 26 27 28 30 32 33 34 34 34 32 30 29 27 26 25 24 24 23 22 22 21 20 19 18 18 19 19 21 23 27 32 36 38 38 35 33 31 29 28 27 27 27 27 27 27 26 25 24 22 19 15 11 8 6 5 5 4 2 1 -1 -2 -2 -1 -1 -2 -2 -3 -4 -5 -7 -9 -11 -13 -14 -15 -16 -16 -16 -16 -15 -13 -12 -10 -9 -8 -6 -5 -4 -3 -3 -4 -5 -6 -9 -11 -13 -13 -12 -11 -11 -10 -10 -11 -13 -15 -17 -18 -19 -18 -17 -15 -13 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -11 -10 -11 -12 -12 -12 -12 -11 -11 -11 -11 -10 -10 -10 -10 -11 -13 -16 -17 -15 -13 -12 -12 -13 -12 -9 -5 -3 -3 -3 -3 -3 -2 -1 0 2 3 5 6 7 7 6 5 4 2 0 -2 -4 -5 -6 -7 -8 -9 -9 -8 -6 -6 -6 -7 -9 -11 -13 -14 -15 -16 -17 -18 -18 -18 -17 -15 -12 -9 -6 -3 -1 0 1 1 2 3 4 4 5 5 4 2 -4 -9 -12 -10 -17 -17 -17 -17 -19 -19 -20 -20 -20 -20 -19 -19 -19 -19 -19 -19 -19 -20 -21 -20 -18 -17 -16 -16 -16 -16 -17 -18 -21 -23 -22 -20 -18 -16 -15 -15 -14 -13 -13 -15 -18 -18 -14 -6 3 10 11 10 9 7 6 4 3 3 3 3 5 7 5 0 -4 -6 -6 -5 -4 -3 -4 -5 -8 -11 -15 -17 -19 -21 -22 -21 -20 -19 -20 -21 -22 -23 -24 -24 -24 -22 -20 -17 -13 -8 -3 2 7 12 14 14 12 9 7 7 9 13 16 20 23 26 29 31 32 32 30 28 28 31 37 43 47 51 54 57 58 59 60 62 64 66 67 72 81 89 90 83 76 71 68 66 66 66 66 67 68 66 62 62 65 69 71 70 69 69 70 70 71 71 70 69 68 67 65 63 61 58 56 53 51 50 49 49 49 47 44 40 35 29 25 23 22 22 22 23 22 21 20 19 17 17 17 17 17 17 18 18 19 20 20 21 21 22 23 25 27 29 32 34 35 37 37 36 35 33 32 30 29 28 27 26 25 23 21 19 17 16 16 17 17 18 19 22 26 31 36 39 40 38 35 33 32 31 31 31 32 32 31 30 29 28 27 24 20 16 13 11 9 9 9 8 6 5 4 3 3 3 2 1 0 -1 -2 -4 -6 -8 -10 -11 -12 -13 -14 -14 -14 -13 -12 -11 -10 -9 -7 -6 -4 -3 -2 -2 -2 -3 -4 -6 -8 -10 -11 -10 -10 -9 -9 -9 -9 -11 -13 -15 -16 -17 -17 -17 -15 -13 -12 -12 -13 -14 -14 -14 -14 -13 -13 -14 -13 -12 -10 -10 -11 -12 -12 -12 -11 -11 -11 -11 -11 -10 -10 -10 -10 -12 -15 -17 -16 -14 -12 -12 -12 -13 -12 -9 -4 -2 -2 -3 -3 -2 -2 -0 1 3 5 6 7 7 7 6 5 4 1 -1 -3 -4 -5 -6 -7 -8 -8 -7 -6 -5 -6 -7 -8 -10 -12 -14 -15 -16 -17 -18 -19 -19 -19 -18 -16 -13 -10 -7 -4 -3 -2 -1 -1 -1 0 2 3 5 5 4 0 -6 -11 -11 -11 -12 -13 -14 -17 -19 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -21 -20 -19 -17 -17 -16 -16 -16 -16 -18 -20 -22 -20 -18 -16 -16 -15 -13 -11 -10 -9 -10 -12 -15 -16 -14 -8 -0 4 5 5 5 6 6 6 5 5 6 8 9 7 4 0 -2 -2 -0 2 3 1 -1 -3 -7 -11 -15 -18 -20 -20 -18 -16 -15 -16 -18 -20 -21 -21 -21 -22 -22 -21 -20 -19 -16 -12 -7 -1 6 12 16 18 17 15 14 14 14 14 13 12 12 13 15 17 18 20 22 25 30 36 41 44 48 52 54 56 56 58 60 63 66 71 80 88 91 89 83 76 70 66 64 64 66 68 71 72 72 68 64 63 65 70 70 70 70 70 71 72 72 72 71 70 69 68 66 63 60 58 56 54 52 50 49 49 49 47 43 38 32 27 24 22 21 22 22 22 22 21 20 19 18 18 18 18 19 19 19 20 20 20 20 20 20 21 22 24 27 30 32 34 36 37 38 37 36 35 34 33 32 32 31 29 27 25 22 20 18 18 18 18 19 19 20 22 26 31 36 40 41 40 38 36 35 35 35 36 37 36 35 34 33 31 29 26 22 18 15 13 13 13 12 11 10 9 9 9 9 8 6 5 3 1 -0 -2 -4 -6 -8 -9 -10 -11 -11 -12 -11 -11 -11 -10 -9 -7 -5 -4 -2 -1 -1 -1 -1 -2 -4 -5 -7 -8 -8 -7 -7 -7 -7 -8 -9 -11 -12 -14 -15 -15 -15 -15 -14 -13 -12 -13 -14 -14 -14 -14 -14 -13 -14 -14 -13 -10 -9 -10 -11 -12 -12 -12 -11 -11 -10 -10 -10 -10 -9 -9 -10 -13 -16 -16 -15 -13 -11 -11 -12 -12 -12 -10 -4 -2 -2 -2 -3 -2 -1 1 2 4 6 7 8 8 8 7 5 3 0 -2 -4 -5 -6 -7 -8 -8 -7 -6 -5 -5 -7 -8 -10 -12 -13 -14 -15 -16 -17 -18 -19 -20 -20 -18 -16 -13 -10 -8 -6 -5 -4 -4 -4 -3 -1 1 4 5 6 4 -1 -8 -12 -4 -5 -7 -9 -11 -14 -16 -17 -17 -18 -18 -19 -20 -21 -21 -20 -20 -20 -20 -20 -19 -19 -18 -18 -17 -17 -17 -18 -20 -21 -20 -18 -16 -16 -15 -14 -13 -11 -10 -10 -10 -12 -14 -15 -13 -8 -2 1 2 3 4 5 5 4 4 5 6 6 5 4 3 2 1 3 5 7 7 4 2 0 -3 -8 -12 -14 -14 -13 -12 -11 -13 -15 -17 -18 -18 -18 -19 -19 -19 -19 -19 -18 -17 -14 -9 -3 4 11 16 19 20 20 20 19 18 16 14 12 11 11 12 14 17 21 25 29 34 39 43 46 49 51 53 54 56 59 66 74 80 87 90 90 87 81 75 70 68 67 68 71 74 76 77 76 74 72 70 67 66 66 69 71 71 71 72 73 73 73 73 71 70 68 66 63 61 59 57 55 53 51 50 49 48 45 41 35 29 25 21 20 20 21 21 22 21 21 20 20 20 19 20 20 21 21 21 21 21 21 20 20 20 21 23 25 27 30 32 34 36 37 37 37 36 36 36 35 35 35 34 33 31 28 26 24 23 23 22 22 22 21 22 23 27 31 36 39 41 41 40 39 38 39 40 41 41 41 39 38 36 34 32 28 23 20 17 16 16 15 14 13 13 13 14 14 13 11 9 7 5 3 1 -1 -3 -4 -6 -7 -8 -8 -8 -9 -9 -9 -9 -8 -7 -5 -3 -1 -0 0 0 0 -0 -1 -3 -4 -5 -5 -5 -5 -5 -5 -6 -7 -9 -10 -12 -13 -14 -14 -14 -14 -13 -12 -13 -13 -14 -14 -14 -14 -14 -14 -14 -14 -11 -9 -9 -10 -11 -12 -12 -12 -11 -10 -10 -10 -10 -9 -9 -9 -11 -14 -15 -15 -13 -12 -11 -11 -11 -12 -13 -9 -4 -1 -1 -2 -2 -1 0 2 4 6 7 8 9 9 9 7 4 1 -1 -3 -4 -5 -6 -7 -7 -6 -5 -5 -5 -6 -8 -10 -11 -12 -13 -14 -14 -15 -17 -18 -20 -21 -21 -19 -17 -14 -12 -10 -8 -7 -7 -7 -6 -4 -2 2 5 6 6 3 -3 -11 -2 -1 -1 -3 -6 -8 -10 -11 -12 -13 -14 -15 -16 -17 -17 -17 -17 -17 -19 -20 -20 -20 -20 -21 -20 -19 -19 -20 -22 -23 -21 -18 -17 -17 -17 -17 -16 -15 -14 -13 -12 -12 -14 -15 -15 -13 -8 -4 -1 1 1 2 1 0 -0 -1 -0 -1 -1 -0 0 -0 -0 1 3 6 7 6 5 4 3 0 -3 -5 -5 -5 -5 -6 -8 -10 -12 -14 -15 -15 -16 -17 -17 -16 -16 -16 -16 -16 -15 -11 -6 1 8 14 17 19 20 20 21 22 20 18 16 15 15 16 19 22 24 28 32 37 42 45 48 50 51 52 54 58 66 80 85 88 88 86 82 77 73 73 73 74 76 78 80 79 76 72 73 75 76 74 73 72 70 66 64 67 72 74 75 75 75 74 72 70 68 66 64 62 60 58 56 53 51 50 48 46 43 38 32 27 22 19 19 19 20 20 21 21 21 20 20 20 21 22 22 23 23 23 23 22 22 22 22 22 23 24 26 28 30 32 34 35 35 35 35 35 36 36 37 38 38 37 36 34 33 31 30 29 28 28 27 25 24 24 25 27 31 35 39 41 42 42 42 42 43 44 45 45 44 43 41 40 37 33 29 24 21 18 17 16 15 14 13 14 15 15 15 15 13 11 9 7 5 3 1 -1 -3 -4 -5 -5 -5 -6 -7 -8 -8 -8 -6 -4 -2 0 1 2 2 2 2 1 0 -1 -2 -2 -3 -3 -4 -4 -5 -6 -7 -8 -10 -11 -12 -13 -13 -13 -13 -12 -12 -13 -14 -14 -14 -14 -14 -14 -14 -14 -12 -10 -8 -9 -10 -11 -11 -11 -11 -10 -10 -10 -10 -9 -8 -8 -9 -12 -14 -15 -14 -12 -11 -10 -10 -11 -12 -12 -9 -4 -0 -0 -1 -1 -0 2 4 5 7 8 9 10 10 8 5 2 -0 -2 -3 -4 -4 -5 -6 -5 -5 -5 -5 -6 -8 -9 -10 -11 -12 -12 -13 -14 -15 -17 -19 -20 -21 -21 -20 -18 -16 -14 -12 -11 -10 -10 -9 -7 -5 -1 2 5 7 6 2 -6 -9 -4 -2 -3 -3 -4 -5 -6 -6 -7 -6 -6 -6 -8 -11 -12 -13 -14 -16 -18 -19 -20 -22 -23 -22 -21 -21 -23 -24 -24 -22 -20 -19 -19 -19 -20 -20 -20 -19 -18 -17 -16 -16 -17 -17 -17 -14 -10 -6 -3 -1 -1 -1 -3 -5 -7 -9 -11 -11 -9 -8 -8 -8 -7 -5 -3 -2 -1 -1 1 3 3 2 3 4 4 3 -1 -3 -5 -5 -6 -8 -9 -11 -13 -15 -15 -14 -14 -15 -15 -16 -15 -13 -9 -3 3 9 13 17 20 23 25 25 23 21 19 19 21 22 23 26 28 32 37 42 46 48 50 51 53 54 57 64 78 79 80 80 77 75 73 75 76 77 76 81 82 81 77 72 68 69 71 73 75 78 76 72 66 62 65 69 70 73 76 77 76 75 73 71 69 67 66 64 62 60 57 53 51 49 47 45 41 36 30 24 20 18 17 18 19 19 20 20 20 20 20 21 22 23 23 24 25 25 25 24 24 24 24 25 26 26 27 29 30 32 33 33 33 33 33 34 35 36 37 38 39 38 38 37 37 36 35 35 34 33 31 29 27 26 26 28 32 36 39 42 43 44 44 45 46 48 48 48 47 46 44 42 39 34 29 25 21 19 17 15 12 11 11 13 14 15 15 15 13 12 10 8 6 4 3 1 -1 -2 -2 -3 -4 -5 -6 -7 -7 -6 -4 -1 2 3 4 4 4 4 4 3 2 1 0 -1 -2 -3 -3 -3 -4 -5 -6 -7 -9 -10 -11 -11 -12 -12 -12 -12 -13 -13 -13 -14 -14 -14 -14 -14 -15 -13 -10 -8 -8 -8 -9 -10 -11 -11 -11 -10 -9 -9 -9 -8 -7 -8 -9 -12 -14 -15 -13 -11 -10 -9 -9 -10 -12 -12 -9 -4 -1 -1 -1 -0 1 3 5 7 8 10 11 11 9 7 4 1 -0 -1 -2 -3 -3 -4 -4 -4 -4 -5 -6 -7 -8 -9 -9 -10 -11 -11 -12 -13 -15 -17 -19 -20 -22 -22 -21 -19 -17 -15 -14 -13 -12 -12 -10 -8 -5 -1 3 6 7 6 -1 -17 -13 -10 -10 -8 -7 -5 -5 -4 -4 -3 -2 -1 -1 -2 -4 -6 -8 -10 -13 -15 -16 -18 -19 -20 -20 -21 -23 -24 -24 -21 -20 -20 -20 -22 -23 -24 -24 -24 -23 -22 -21 -21 -20 -20 -20 -19 -17 -14 -10 -6 -4 -3 -4 -7 -11 -16 -19 -19 -19 -18 -18 -18 -17 -17 -17 -16 -15 -12 -9 -6 -4 -3 -0 3 5 6 4 1 2 3 3 1 -1 -3 -7 -12 -15 -15 -14 -14 -15 -15 -16 -16 -15 -12 -7 0 9 16 22 25 26 26 25 25 24 25 26 26 27 29 31 34 39 44 47 49 50 52 53 55 59 66 72 67 68 68 66 68 72 77 77 74 73 78 80 79 75 70 66 66 66 66 68 72 72 69 65 63 66 70 71 72 73 74 77 77 76 74 72 71 69 68 66 64 61 57 53 50 48 46 43 39 34 28 23 18 17 16 17 18 18 19 19 19 19 20 21 22 23 24 25 26 26 26 26 26 27 27 28 28 28 29 30 31 32 32 31 31 31 31 32 33 34 35 36 37 37 38 38 39 39 40 40 39 38 36 33 31 29 29 30 33 36 40 42 44 45 46 47 49 50 50 50 49 48 46 44 40 35 29 24 20 17 13 10 8 8 9 10 12 13 14 13 13 11 10 9 7 5 4 2 0 -1 -1 -2 -3 -5 -6 -6 -5 -3 0 3 6 7 7 7 7 7 6 5 3 2 0 -1 -2 -2 -2 -2 -3 -4 -5 -7 -8 -9 -10 -10 -11 -11 -12 -12 -13 -13 -14 -14 -15 -15 -14 -15 -14 -11 -9 -7 -7 -7 -8 -9 -10 -11 -10 -9 -9 -9 -8 -7 -7 -7 -10 -13 -14 -13 -11 -10 -9 -8 -8 -10 -11 -12 -9 -5 -2 -1 -0 0 2 4 7 8 10 11 11 10 8 5 3 1 0 -0 -1 -1 -1 -2 -2 -3 -5 -6 -7 -8 -8 -8 -8 -9 -9 -10 -11 -12 -14 -16 -18 -20 -21 -22 -21 -20 -19 -17 -16 -15 -14 -12 -11 -8 -4 -0 3 6 7 3 -19 -18 -18 -17 -15 -13 -10 -8 -7 -6 -4 -3 -1 1 2 1 0 -2 -4 -6 -8 -10 -12 -14 -15 -16 -18 -20 -21 -21 -19 -18 -18 -19 -20 -22 -24 -25 -26 -26 -26 -25 -25 -24 -24 -23 -23 -22 -21 -18 -15 -12 -9 -8 -9 -12 -17 -20 -21 -21 -20 -20 -20 -21 -21 -21 -21 -21 -20 -18 -15 -12 -9 -7 -5 -4 -2 0 2 5 7 7 4 -1 -4 -7 -9 -10 -8 -6 -4 -5 -6 -9 -11 -13 -14 -13 -10 -3 6 16 24 27 26 26 27 28 30 31 31 31 32 34 38 42 46 49 50 51 53 55 60 67 73 69 59 58 60 62 66 71 75 74 69 67 69 72 73 73 70 65 63 62 60 60 61 63 63 63 64 68 73 74 73 72 71 74 77 77 76 74 74 73 71 70 68 65 60 56 51 48 46 45 42 38 33 27 21 17 16 15 16 17 17 17 18 18 19 20 21 22 23 24 25 26 26 27 27 28 29 29 30 30 30 31 31 32 31 31 30 29 29 30 30 31 32 33 33 33 34 35 37 39 40 42 43 43 42 40 37 35 33 33 33 35 38 40 43 45 46 47 49 50 51 51 51 50 49 47 44 40 34 28 23 17 13 9 6 5 5 6 8 9 11 11 12 11 11 10 9 7 6 4 2 1 -1 -2 -3 -5 -6 -6 -5 -3 1 5 8 10 11 11 10 9 8 7 5 4 2 0 -1 -1 -1 -1 -1 -1 -2 -4 -6 -7 -8 -9 -10 -10 -11 -12 -12 -13 -14 -15 -15 -15 -15 -15 -14 -13 -10 -7 -6 -6 -6 -7 -9 -10 -10 -9 -9 -8 -8 -7 -6 -6 -7 -10 -13 -13 -12 -10 -9 -7 -7 -8 -9 -11 -12 -10 -7 -4 -2 -0 1 4 6 8 10 11 11 11 9 7 4 3 2 2 2 2 1 1 -0 -2 -4 -5 -7 -7 -7 -7 -7 -7 -7 -8 -9 -10 -12 -13 -15 -17 -19 -20 -21 -21 -21 -20 -18 -17 -16 -15 -13 -11 -8 -4 -1 2 5 5 -17 -19 -21 -22 -20 -18 -15 -13 -11 -10 -9 -8 -6 -4 -1 1 2 2 1 -0 -1 -3 -6 -8 -9 -10 -12 -13 -15 -16 -17 -16 -15 -15 -15 -17 -20 -22 -24 -26 -27 -27 -28 -28 -27 -27 -26 -26 -26 -25 -24 -21 -19 -17 -16 -16 -17 -18 -17 -16 -16 -15 -15 -15 -15 -15 -14 -14 -14 -13 -11 -9 -9 -10 -10 -10 -9 -8 -5 -2 1 2 2 -2 -4 -4 -3 -2 0 2 3 2 -0 -2 -4 -6 -9 -11 -12 -11 -6 2 12 21 27 29 29 29 31 34 35 35 36 38 41 44 48 51 53 55 57 61 69 77 78 68 58 57 60 64 68 70 71 70 67 65 63 63 64 65 66 62 60 59 58 57 57 58 60 62 65 68 72 73 74 75 74 75 78 78 77 76 76 75 74 73 71 69 64 59 54 50 47 45 44 42 37 32 25 20 16 15 14 15 16 16 16 17 18 18 19 20 21 22 23 24 25 26 26 27 28 29 30 31 31 32 33 33 32 31 30 29 29 28 29 29 29 29 29 29 30 30 32 34 36 39 42 44 45 45 44 42 40 38 37 37 38 39 41 43 45 46 48 49 50 51 52 51 51 49 47 43 39 33 26 20 14 10 6 4 3 3 4 5 7 8 10 10 10 10 9 8 7 5 3 2 -0 -2 -3 -5 -6 -7 -6 -4 0 5 9 12 15 15 14 13 11 9 7 5 4 2 1 1 1 2 2 2 0 -2 -4 -5 -7 -8 -8 -9 -10 -11 -12 -12 -14 -15 -16 -16 -16 -16 -15 -14 -12 -9 -6 -5 -5 -5 -7 -8 -9 -9 -9 -8 -7 -7 -6 -5 -6 -7 -11 -13 -12 -10 -9 -7 -6 -6 -7 -9 -11 -12 -10 -8 -6 -3 0 3 5 7 10 11 12 12 11 9 6 4 4 4 4 5 4 3 2 -0 -2 -4 -6 -7 -7 -6 -5 -5 -6 -6 -7 -8 -9 -10 -12 -13 -15 -17 -19 -20 -20 -20 -20 -19 -18 -17 -15 -13 -11 -8 -5 -2 2 4 -14 -18 -21 -22 -22 -21 -19 -16 -14 -13 -13 -13 -13 -11 -9 -7 -4 -2 -0 1 0 -1 -2 -2 -3 -4 -5 -7 -10 -12 -15 -17 -16 -15 -15 -13 -12 -13 -15 -19 -23 -26 -29 -30 -30 -30 -30 -30 -30 -30 -29 -28 -27 -25 -25 -24 -23 -22 -20 -18 -17 -15 -15 -14 -13 -11 -9 -9 -8 -6 -4 -2 -3 -5 -6 -8 -9 -10 -10 -9 -8 -7 -6 -7 -7 -5 -2 1 3 5 6 6 6 6 5 3 0 -3 -7 -10 -10 -7 -1 9 19 25 28 30 33 36 37 38 39 41 43 45 48 52 55 59 62 65 69 71 68 61 59 61 65 69 72 73 72 71 69 66 63 62 60 59 58 56 57 57 56 55 54 57 61 63 64 64 65 68 72 77 79 81 81 79 78 77 76 77 76 76 74 72 68 63 57 52 47 45 45 44 42 37 30 24 18 15 14 14 15 15 16 16 17 17 18 18 19 20 21 22 23 23 24 25 26 27 28 30 31 32 33 34 33 33 31 30 30 29 29 29 28 28 27 27 27 27 28 29 31 34 36 39 42 44 47 48 47 45 43 42 41 41 42 43 45 46 47 48 50 51 51 51 51 50 49 46 42 37 31 24 18 13 9 6 4 2 2 2 3 5 7 9 9 9 9 8 7 6 4 3 1 -1 -4 -6 -7 -8 -9 -7 -4 -0 4 9 13 16 16 16 14 11 9 7 6 4 4 4 4 5 5 4 3 1 -1 -3 -5 -6 -7 -8 -9 -10 -11 -12 -13 -15 -16 -17 -17 -17 -16 -16 -14 -12 -8 -5 -4 -3 -4 -6 -8 -9 -9 -8 -7 -6 -5 -5 -5 -5 -8 -11 -12 -11 -9 -7 -6 -5 -4 -5 -8 -10 -11 -11 -9 -7 -3 1 5 7 9 11 13 13 12 10 8 6 6 6 7 8 7 6 4 2 -1 -3 -5 -6 -6 -5 -5 -4 -4 -5 -5 -6 -7 -8 -9 -10 -12 -13 -15 -17 -18 -19 -20 -20 -20 -20 -18 -16 -14 -11 -9 -6 -2 1 -15 -17 -19 -20 -21 -21 -21 -19 -17 -15 -14 -14 -15 -16 -17 -16 -15 -12 -9 -7 -4 -2 -1 -1 -1 -2 -3 -6 -8 -11 -13 -14 -15 -15 -13 -10 -9 -11 -12 -14 -16 -19 -22 -25 -27 -27 -29 -31 -31 -31 -30 -30 -30 -30 -29 -29 -28 -28 -27 -26 -24 -22 -20 -19 -16 -14 -11 -8 -8 -5 -2 1 1 1 0 -1 -3 -6 -9 -12 -14 -15 -13 -12 -11 -10 -8 -4 -1 1 3 5 7 8 8 8 8 6 3 -2 -6 -8 -7 -2 7 15 23 29 34 38 39 40 41 42 44 45 48 51 56 61 65 66 66 66 63 61 62 65 68 70 73 74 74 73 71 68 64 61 58 55 54 54 56 57 57 57 57 59 62 63 62 60 62 66 69 71 75 82 81 79 77 76 75 75 77 77 76 74 71 66 60 54 49 46 45 45 44 42 36 29 22 17 14 14 14 15 15 16 17 17 17 17 18 18 19 20 21 21 22 22 23 24 25 27 29 30 32 33 33 33 33 32 32 32 31 31 30 29 28 27 26 26 26 26 27 28 31 33 36 39 43 48 51 52 50 48 46 45 45 45 46 47 48 48 49 50 51 51 50 50 49 47 44 40 35 29 23 17 12 8 5 3 1 0 0 1 3 6 8 8 8 8 7 7 6 4 2 -1 -4 -7 -9 -11 -12 -12 -11 -10 -8 -5 -1 4 10 14 15 14 12 10 8 7 6 6 7 8 8 8 6 4 2 -1 -3 -5 -6 -7 -8 -9 -10 -11 -12 -14 -16 -17 -18 -18 -18 -17 -16 -14 -11 -8 -5 -3 -2 -4 -5 -7 -8 -8 -7 -6 -5 -5 -4 -4 -6 -9 -12 -12 -10 -7 -5 -4 -2 -2 -4 -7 -9 -10 -10 -10 -7 -3 2 7 9 12 13 14 14 12 10 9 8 8 9 10 10 8 6 3 1 -2 -4 -5 -6 -5 -4 -3 -3 -3 -3 -4 -5 -6 -7 -8 -9 -10 -12 -14 -15 -16 -18 -20 -21 -21 -20 -18 -16 -14 -12 -9 -6 -2 -16 -17 -18 -18 -19 -20 -21 -21 -20 -17 -15 -13 -13 -14 -17 -19 -20 -21 -20 -18 -15 -12 -9 -8 -7 -7 -7 -8 -10 -12 -15 -15 -16 -16 -15 -13 -11 -11 -11 -11 -12 -14 -16 -18 -20 -23 -25 -27 -29 -29 -30 -30 -31 -31 -31 -30 -31 -31 -32 -32 -32 -31 -29 -27 -25 -21 -18 -14 -12 -9 -6 -2 0 2 3 3 2 -1 -5 -11 -14 -14 -13 -14 -15 -15 -14 -11 -8 -5 -3 -2 1 3 5 7 9 10 10 7 3 -2 -5 -5 -2 3 11 20 29 37 41 43 44 45 45 46 47 50 53 58 61 62 62 62 62 64 68 69 69 70 71 73 73 71 68 66 64 61 57 55 54 54 55 57 59 63 69 69 67 64 64 66 68 69 70 71 71 71 70 69 69 68 68 70 73 76 77 75 72 68 63 57 51 47 46 46 46 45 41 34 27 21 16 14 14 14 15 16 17 17 17 17 17 17 18 19 20 20 20 20 20 21 22 24 25 27 29 30 31 31 32 33 34 35 35 34 33 31 30 28 27 26 25 25 25 25 26 27 29 31 35 41 48 53 55 54 52 51 50 49 50 50 50 51 51 51 51 51 50 49 49 48 46 42 38 33 27 21 16 12 8 5 3 0 -1 -1 -0 3 5 7 7 7 7 7 6 5 2 -1 -5 -8 -11 -12 -14 -15 -15 -14 -13 -12 -11 -8 -4 2 9 13 13 11 9 7 6 6 7 9 11 11 9 7 5 2 -1 -3 -5 -6 -7 -8 -9 -10 -11 -13 -14 -16 -18 -19 -19 -18 -17 -15 -13 -10 -8 -5 -2 -2 -3 -4 -6 -8 -8 -7 -5 -4 -4 -4 -5 -7 -10 -12 -10 -8 -5 -3 -1 0 -0 -3 -6 -8 -9 -10 -10 -8 -3 4 9 12 14 15 15 14 13 11 11 11 12 13 12 10 7 4 2 -0 -2 -4 -4 -4 -3 -2 -2 -2 -2 -3 -3 -4 -5 -6 -7 -8 -9 -11 -13 -14 -16 -17 -20 -21 -21 -20 -18 -16 -14 -12 -9 -6 -16 -17 -17 -17 -16 -17 -19 -21 -22 -21 -18 -15 -12 -10 -11 -14 -17 -19 -21 -22 -20 -19 -17 -17 -16 -15 -14 -13 -13 -14 -15 -15 -15 -15 -15 -14 -13 -11 -10 -11 -11 -12 -13 -15 -17 -20 -21 -21 -23 -24 -26 -27 -28 -29 -29 -29 -30 -31 -32 -34 -35 -36 -35 -34 -33 -30 -27 -23 -19 -15 -12 -9 -6 -4 -2 -1 1 -0 -5 -8 -9 -8 -8 -12 -14 -15 -14 -13 -12 -10 -9 -8 -7 -5 -3 0 3 6 9 10 9 7 4 0 -2 -3 -1 6 15 26 35 41 45 48 49 48 48 49 51 52 54 55 55 55 56 61 64 65 64 64 65 67 67 66 65 64 63 60 58 56 55 56 56 58 61 65 70 72 70 68 68 70 71 71 70 69 69 69 69 69 69 68 68 68 69 71 73 76 74 70 65 60 54 50 47 46 46 47 45 40 33 26 20 16 15 15 15 16 17 17 17 17 17 17 18 19 20 20 19 19 19 20 21 21 23 24 25 25 26 28 30 32 34 36 37 37 36 34 33 31 29 28 27 26 25 24 24 24 24 24 26 31 39 47 53 57 57 56 55 54 54 54 54 55 55 54 53 52 50 49 48 48 46 44 40 35 30 25 20 16 12 9 6 2 -0 -2 -2 -1 1 3 4 4 5 5 5 3 0 -3 -6 -9 -11 -13 -14 -14 -14 -13 -13 -14 -13 -13 -11 -8 -4 2 7 8 7 4 1 0 3 6 10 13 13 11 8 5 2 -1 -3 -5 -6 -8 -9 -10 -11 -12 -13 -15 -17 -18 -19 -19 -18 -16 -14 -12 -10 -8 -5 -2 -1 -2 -4 -6 -7 -7 -6 -4 -4 -3 -4 -6 -9 -12 -11 -8 -6 -3 -1 1 2 2 -1 -4 -7 -8 -9 -10 -9 -3 5 10 14 15 16 16 15 14 13 14 14 15 14 12 9 6 3 1 -1 -2 -3 -2 -2 -1 -1 -1 -1 -2 -2 -3 -4 -4 -5 -6 -7 -9 -11 -12 -14 -15 -17 -20 -21 -21 -20 -18 -16 -14 -12 -10 -15 -15 -15 -14 -13 -14 -15 -17 -19 -20 -20 -18 -15 -11 -9 -10 -13 -16 -18 -19 -19 -19 -20 -21 -22 -22 -21 -19 -17 -15 -14 -13 -14 -14 -15 -14 -13 -12 -11 -10 -10 -11 -11 -13 -17 -19 -19 -18 -19 -20 -20 -21 -22 -23 -25 -26 -28 -29 -31 -33 -34 -35 -36 -37 -36 -36 -34 -30 -25 -21 -18 -17 -16 -14 -12 -10 -8 -8 -10 -9 -7 -5 -5 -9 -11 -12 -11 -10 -10 -10 -10 -11 -11 -10 -10 -8 -6 -3 1 4 6 8 9 8 4 -0 -4 -5 -2 6 17 27 37 45 49 50 51 52 51 49 47 45 42 39 38 41 44 46 47 48 53 56 57 58 59 59 59 59 58 57 57 58 59 60 62 65 68 70 71 71 71 71 71 70 68 66 66 67 67 68 69 69 69 69 71 72 74 76 76 73 68 63 58 52 48 46 46 47 47 44 38 32 25 19 16 15 16 17 17 18 18 17 17 17 18 19 20 20 20 20 20 20 21 21 22 22 22 22 23 24 26 29 31 34 36 37 37 36 35 34 32 31 29 28 26 24 23 22 21 20 19 22 28 36 45 53 56 58 58 57 57 58 59 59 59 58 56 55 53 51 49 48 47 45 42 37 32 28 23 19 16 13 9 5 2 -1 -2 -2 -1 -0 -0 -1 -1 -1 -2 -3 -5 -6 -7 -8 -9 -10 -11 -11 -11 -12 -13 -14 -15 -15 -14 -13 -11 -8 -4 -1 1 -0 -3 -5 -4 -1 5 11 14 14 12 8 4 1 -1 -3 -5 -7 -8 -9 -10 -11 -12 -13 -15 -17 -18 -19 -19 -17 -15 -13 -12 -10 -8 -5 -2 -0 -1 -3 -5 -7 -7 -5 -4 -3 -3 -5 -7 -10 -11 -9 -7 -4 -1 2 4 4 3 0 -3 -5 -7 -8 -10 -9 -3 5 12 15 16 16 16 16 15 15 16 16 15 13 11 7 5 2 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -2 -2 -3 -4 -4 -5 -6 -7 -9 -11 -12 -14 -15 -18 -20 -21 -21 -19 -17 -15 -14 -12 -12 -12 -13 -13 -12 -12 -12 -13 -14 -15 -16 -17 -16 -14 -11 -9 -9 -11 -13 -15 -15 -16 -19 -22 -25 -26 -25 -23 -20 -17 -14 -13 -13 -13 -13 -13 -13 -12 -11 -10 -10 -9 -9 -11 -15 -18 -18 -18 -18 -19 -18 -16 -17 -19 -21 -23 -26 -28 -29 -31 -32 -33 -34 -35 -35 -35 -35 -32 -28 -24 -22 -21 -20 -20 -19 -19 -18 -17 -16 -14 -11 -9 -7 -9 -10 -9 -8 -7 -7 -8 -8 -9 -10 -11 -12 -12 -12 -11 -9 -6 -3 1 4 7 7 4 -0 -4 -8 -9 -5 3 13 25 35 42 47 49 48 44 38 31 24 18 15 15 16 17 20 24 31 37 41 45 49 51 54 56 57 57 56 58 58 58 57 57 58 60 63 65 65 65 65 65 63 62 62 63 64 66 67 70 72 72 72 74 77 79 78 75 72 68 61 56 51 47 45 46 47 46 43 37 30 24 19 17 16 17 18 18 18 18 18 18 19 20 21 21 21 21 21 22 22 22 22 22 21 21 22 23 25 27 29 31 33 34 35 36 35 35 34 32 31 29 27 25 23 22 20 18 17 16 18 23 32 43 51 55 57 58 58 60 61 62 63 62 60 58 56 54 51 50 48 46 43 39 34 30 26 22 19 16 13 9 6 2 0 -0 -0 -1 -1 -2 -4 -4 -5 -5 -5 -4 -4 -4 -5 -6 -7 -8 -10 -11 -13 -15 -16 -16 -16 -15 -14 -13 -11 -7 -4 -1 -1 -4 -7 -8 -4 5 12 15 15 12 8 4 1 -2 -4 -6 -7 -8 -9 -10 -11 -12 -13 -15 -16 -18 -18 -17 -15 -13 -12 -11 -10 -8 -4 -1 1 -0 -3 -5 -7 -6 -4 -3 -3 -4 -6 -9 -11 -10 -8 -5 -2 1 3 5 5 4 1 -2 -4 -5 -6 -10 -10 -4 4 12 15 16 17 17 17 17 17 17 16 14 12 9 6 4 2 0 -0 -0 0 -0 -0 -1 -1 -1 -1 -2 -3 -3 -4 -5 -5 -6 -8 -9 -11 -12 -14 -16 -18 -20 -21 -20 -18 -16 -15 -14 -11 -11 -12 -12 -12 -12 -11 -11 -11 -12 -13 -14 -15 -15 -13 -10 -8 -8 -10 -11 -11 -14 -17 -21 -23 -24 -24 -23 -22 -19 -17 -14 -13 -12 -11 -11 -11 -11 -11 -10 -9 -8 -7 -8 -11 -12 -11 -11 -11 -13 -14 -15 -15 -16 -17 -19 -22 -26 -28 -30 -31 -31 -31 -33 -33 -33 -32 -30 -27 -25 -23 -22 -22 -22 -22 -22 -22 -22 -22 -20 -17 -14 -11 -9 -8 -8 -8 -7 -7 -7 -7 -7 -8 -10 -12 -12 -13 -13 -13 -14 -12 -10 -7 -4 -0 1 -0 -2 -4 -6 -9 -11 -11 -7 1 9 16 21 22 21 17 15 13 12 10 8 5 3 2 4 8 13 20 28 35 40 45 47 49 50 49 50 48 45 42 39 38 40 43 46 48 49 49 50 50 50 51 53 54 56 58 62 66 69 71 74 77 79 79 77 74 70 65 60 54 49 45 44 46 47 45 41 35 29 23 19 17 18 18 19 19 18 18 18 19 20 21 22 22 22 23 23 24 24 23 23 22 22 22 24 25 27 28 29 30 31 32 33 33 33 33 32 31 30 28 26 23 22 20 18 16 13 11 12 17 28 40 49 53 55 56 58 61 63 64 64 63 61 60 58 55 53 50 48 45 41 36 31 27 24 21 19 16 13 9 6 4 3 2 2 1 -1 -2 -3 -3 -3 -2 -0 0 -1 -2 -4 -6 -7 -9 -10 -12 -13 -15 -16 -16 -16 -15 -15 -14 -12 -9 -4 -2 -3 -6 -9 -10 -4 6 13 17 15 11 7 3 1 -2 -4 -6 -7 -9 -10 -10 -11 -12 -13 -14 -16 -17 -17 -16 -14 -12 -11 -10 -10 -8 -5 -1 1 0 -2 -5 -7 -6 -4 -3 -3 -5 -8 -10 -11 -9 -6 -4 -1 2 4 6 5 3 1 -1 -2 -2 -4 -8 -10 -7 2 10 14 16 17 18 18 18 18 17 15 14 11 9 6 3 1 0 0 0 0 -0 -0 -1 -1 -1 -2 -3 -4 -4 -5 -6 -6 -7 -8 -10 -11 -13 -15 -16 -18 -20 -20 -19 -16 -15 -14 -15 -15 -14 -13 -13 -13 -13 -13 -12 -12 -12 -13 -14 -15 -14 -13 -10 -9 -9 -9 -9 -12 -15 -18 -19 -19 -20 -20 -21 -20 -19 -17 -15 -12 -9 -8 -7 -8 -8 -8 -7 -7 -6 -6 -6 -7 -9 -8 -8 -8 -11 -14 -15 -15 -15 -14 -15 -20 -25 -28 -29 -30 -30 -31 -31 -31 -30 -27 -25 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -22 -18 -14 -11 -10 -10 -10 -9 -9 -8 -8 -8 -8 -8 -9 -10 -11 -11 -11 -12 -14 -15 -15 -15 -14 -12 -10 -7 -4 -3 -2 -4 -6 -9 -12 -12 -11 -9 -7 -6 -5 -3 1 6 10 12 12 10 7 4 2 1 1 2 5 12 19 23 24 25 27 28 27 24 19 16 15 17 19 21 24 26 28 29 30 31 31 32 33 35 37 39 44 49 54 60 64 69 72 76 77 75 72 67 62 56 51 47 44 44 46 46 44 40 33 27 22 19 18 18 19 18 18 18 17 18 19 20 21 22 23 24 25 26 25 24 23 22 22 23 25 27 28 29 30 30 30 30 30 30 30 31 30 30 29 27 25 23 21 19 17 15 12 9 6 5 13 26 38 47 50 52 54 57 61 63 64 64 63 63 62 60 57 54 51 48 44 39 34 29 25 22 20 18 15 13 10 8 6 6 5 4 3 2 0 -0 0 1 2 2 1 -0 -2 -4 -5 -6 -7 -9 -10 -12 -14 -15 -16 -16 -16 -15 -15 -13 -10 -5 -3 -5 -8 -11 -9 -2 7 15 18 14 10 6 3 0 -2 -4 -6 -7 -9 -10 -10 -11 -12 -12 -14 -15 -16 -16 -14 -12 -10 -10 -9 -9 -8 -4 -0 1 0 -2 -5 -6 -5 -4 -3 -4 -6 -9 -11 -10 -8 -6 -4 -1 2 5 5 4 2 0 -1 0 1 -0 -4 -10 -11 -2 6 11 15 17 18 19 19 18 16 15 13 11 8 4 1 -0 -0 -0 0 0 -0 -0 -1 -1 -1 -3 -4 -5 -6 -6 -7 -7 -8 -9 -10 -12 -13 -15 -17 -19 -20 -19 -17 -15 -14 -21 -20 -18 -15 -15 -15 -15 -15 -15 -14 -14 -13 -14 -14 -14 -14 -14 -13 -11 -10 -9 -11 -13 -15 -15 -14 -14 -15 -16 -17 -19 -18 -17 -14 -10 -7 -5 -5 -5 -4 -4 -4 -4 -3 -2 -1 -1 -2 -4 -5 -8 -11 -14 -15 -14 -12 -12 -15 -19 -23 -25 -27 -28 -28 -29 -29 -28 -25 -23 -23 -24 -25 -25 -25 -25 -25 -26 -26 -25 -24 -21 -17 -13 -10 -9 -10 -10 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -11 -12 -13 -15 -16 -18 -19 -19 -18 -16 -12 -9 -7 -6 -5 -6 -6 -8 -10 -11 -12 -12 -10 -7 -2 3 8 11 12 10 8 7 5 4 2 1 0 0 1 1 1 2 2 3 2 2 4 7 11 13 16 18 19 20 20 19 17 15 14 14 15 17 18 22 27 33 39 45 52 58 66 71 73 72 69 64 59 54 49 45 43 44 45 45 43 37 31 25 21 18 18 18 18 17 17 16 16 17 18 19 20 22 23 25 26 26 24 22 21 21 22 25 28 30 31 31 30 29 28 28 28 28 28 28 28 27 26 25 23 21 19 17 14 10 6 1 -3 -0 11 24 36 43 45 48 51 55 59 61 63 63 64 64 64 61 58 55 52 48 43 37 32 27 24 21 19 17 15 13 11 9 9 9 8 7 5 4 3 3 4 4 4 3 2 0 -1 -3 -4 -5 -6 -7 -9 -12 -14 -15 -16 -16 -16 -16 -16 -14 -10 -6 -5 -6 -9 -10 -7 -0 9 17 16 12 8 5 2 -0 -2 -4 -6 -7 -9 -10 -10 -11 -11 -12 -13 -14 -15 -14 -12 -10 -9 -9 -9 -9 -8 -4 -0 2 0 -3 -6 -6 -5 -3 -3 -5 -8 -10 -10 -9 -7 -5 -4 -1 2 4 4 3 1 -0 1 3 4 4 1 -6 -11 -9 -2 5 10 14 16 18 18 17 16 16 14 11 6 2 -1 -2 -1 -0 -0 -0 -0 -0 -0 -1 -2 -4 -5 -7 -7 -8 -8 -9 -9 -10 -11 -12 -14 -15 -17 -18 -19 -18 -16 -14 -22 -20 -18 -17 -17 -17 -17 -17 -17 -16 -16 -15 -15 -15 -15 -16 -16 -16 -15 -13 -11 -11 -12 -13 -13 -13 -12 -12 -13 -14 -16 -18 -18 -17 -14 -10 -8 -6 -4 -3 -1 -1 -1 -1 0 2 3 2 0 -2 -6 -9 -12 -14 -13 -12 -11 -11 -12 -14 -17 -21 -23 -24 -24 -24 -23 -22 -21 -22 -23 -24 -25 -26 -26 -26 -26 -27 -26 -26 -24 -22 -18 -15 -12 -10 -10 -11 -13 -13 -12 -11 -11 -11 -11 -10 -10 -10 -10 -10 -11 -12 -14 -16 -18 -20 -22 -22 -21 -19 -16 -12 -9 -5 -4 -4 -5 -7 -9 -11 -12 -11 -9 -5 -1 4 8 9 10 9 8 6 5 5 4 3 3 1 -2 -4 -5 -5 -5 -4 -2 1 6 10 15 20 23 25 25 24 21 18 15 13 12 12 13 14 17 20 24 28 34 42 52 61 68 71 69 66 62 57 52 47 44 43 43 45 44 40 34 28 23 19 17 16 16 16 15 14 14 14 15 16 17 18 20 22 24 23 22 19 17 17 18 22 25 26 27 27 26 26 25 25 25 25 26 26 26 26 25 24 23 21 20 17 14 9 5 -1 -7 -8 -2 9 22 32 37 40 43 47 51 55 59 61 63 65 66 64 62 59 56 52 47 42 36 31 26 23 21 19 17 14 13 12 12 12 12 10 9 7 6 6 7 8 7 7 5 4 2 1 -0 -2 -3 -5 -6 -9 -11 -13 -15 -15 -16 -16 -16 -16 -14 -11 -7 -5 -7 -9 -10 -6 1 11 16 15 11 7 4 2 -0 -2 -4 -6 -7 -9 -9 -10 -11 -11 -11 -12 -13 -14 -13 -10 -8 -7 -8 -8 -9 -8 -4 -0 2 -0 -4 -6 -6 -5 -3 -4 -6 -9 -10 -9 -8 -7 -5 -4 -1 2 3 3 1 -1 -0 1 4 7 8 6 1 -5 -11 -12 -6 1 6 10 13 14 15 16 16 15 10 3 -2 -4 -3 -1 -0 0 0 1 0 -0 -2 -3 -5 -7 -8 -9 -9 -10 -10 -10 -11 -11 -13 -14 -15 -17 -18 -18 -17 -15 -21 -18 -16 -17 -19 -18 -16 -16 -16 -17 -16 -15 -15 -16 -17 -20 -21 -21 -20 -18 -15 -12 -12 -13 -14 -14 -12 -10 -9 -9 -11 -14 -16 -18 -17 -16 -14 -12 -9 -7 -4 -2 -1 -0 1 2 3 2 -0 -3 -6 -8 -10 -12 -12 -11 -9 -7 -6 -6 -9 -13 -16 -17 -17 -16 -16 -15 -16 -17 -19 -22 -23 -24 -25 -26 -27 -28 -28 -28 -27 -26 -24 -21 -16 -12 -9 -10 -11 -12 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -10 -10 -11 -12 -13 -15 -18 -20 -23 -24 -23 -21 -17 -12 -9 -6 -5 -5 -6 -8 -10 -12 -12 -11 -9 -4 1 5 8 10 10 9 8 8 8 7 5 3 0 -1 -3 -5 -7 -7 -7 -6 -2 2 7 12 18 23 27 29 29 28 25 23 21 20 20 20 22 23 23 25 27 32 40 49 58 65 67 66 63 59 55 51 46 43 42 43 44 42 37 31 25 20 16 15 14 14 13 12 12 11 11 12 13 14 16 18 19 19 17 14 11 11 12 14 14 13 12 12 13 14 15 16 17 19 20 22 23 23 24 24 23 22 21 19 15 11 5 -0 -6 -10 -9 -3 7 18 26 31 35 38 42 47 52 56 60 63 65 65 64 62 59 56 52 47 41 36 31 27 24 22 19 17 14 13 13 14 14 13 12 11 10 10 11 11 11 10 9 7 6 4 2 1 -1 -2 -4 -6 -8 -10 -12 -14 -15 -16 -16 -17 -16 -14 -10 -5 -5 -7 -10 -10 -7 2 11 14 13 10 6 4 2 -0 -2 -4 -6 -7 -8 -9 -10 -11 -11 -11 -11 -12 -12 -10 -8 -6 -6 -8 -8 -9 -8 -5 1 1 -1 -4 -7 -6 -5 -4 -6 -8 -10 -9 -8 -7 -6 -5 -3 -1 1 2 1 -1 -2 -1 1 5 8 9 9 7 3 -2 -8 -12 -11 -6 -0 3 6 9 13 16 13 6 -1 -5 -5 -3 -1 -0 1 1 1 1 -1 -3 -5 -7 -9 -10 -11 -11 -11 -11 -11 -11 -12 -13 -14 -16 -17 -18 -18 -16 -20 -18 -17 -18 -19 -17 -15 -15 -16 -16 -16 -15 -15 -15 -16 -18 -20 -20 -20 -19 -18 -15 -14 -13 -14 -14 -12 -10 -9 -8 -9 -10 -13 -16 -18 -19 -19 -19 -17 -14 -11 -8 -6 -5 -3 -0 0 -0 -2 -4 -6 -8 -9 -10 -10 -8 -6 -4 -1 -1 -2 -6 -10 -11 -10 -8 -6 -6 -8 -10 -12 -15 -18 -20 -22 -24 -26 -28 -29 -30 -30 -29 -28 -24 -19 -14 -10 -8 -8 -9 -9 -9 -10 -10 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -11 -14 -17 -20 -23 -24 -23 -20 -16 -13 -10 -8 -6 -6 -8 -10 -11 -13 -13 -10 -7 -3 2 7 8 9 9 9 8 7 5 3 1 1 -0 -2 -3 -5 -8 -9 -7 -5 -2 2 8 14 20 26 29 31 30 30 29 26 24 22 24 25 27 29 30 33 37 42 48 56 61 63 63 60 57 53 49 45 43 42 43 42 39 34 28 22 17 14 12 11 11 10 9 8 8 8 8 9 11 12 14 13 10 7 5 3 3 2 1 -0 -3 -5 -5 -5 -3 -1 2 5 8 11 13 15 17 19 20 21 21 20 17 13 9 3 -2 -7 -10 -8 -2 6 13 21 26 31 35 39 44 49 53 58 61 63 64 63 62 59 56 52 48 43 38 34 30 27 23 20 17 15 15 16 16 16 15 13 13 13 14 15 15 14 13 11 9 8 5 3 1 -1 -2 -3 -5 -7 -9 -12 -14 -15 -16 -17 -17 -16 -13 -8 -4 -5 -8 -11 -11 -6 2 9 13 12 8 6 3 1 -0 -2 -4 -5 -7 -8 -9 -10 -11 -10 -10 -10 -11 -11 -9 -6 -4 -6 -7 -9 -9 -8 -4 0 1 -2 -5 -7 -7 -6 -6 -7 -9 -9 -8 -7 -6 -6 -5 -3 -1 -0 0 -2 -3 -3 -2 1 4 7 9 10 11 10 7 3 -2 -8 -10 -9 -7 -4 1 7 11 8 2 -6 -8 -6 -4 -2 0 2 2 2 0 -2 -4 -6 -8 -10 -11 -12 -12 -12 -12 -11 -12 -12 -13 -14 -16 -17 -17 -16 -20 -18 -17 -16 -16 -16 -15 -16 -16 -16 -16 -15 -15 -15 -15 -16 -17 -18 -20 -21 -21 -20 -18 -16 -15 -15 -14 -13 -12 -11 -9 -8 -9 -12 -16 -19 -22 -23 -23 -21 -19 -18 -16 -14 -12 -9 -6 -5 -5 -6 -8 -9 -10 -10 -10 -8 -6 -3 -0 1 0 -2 -5 -5 -3 -0 2 2 0 -2 -4 -8 -11 -13 -16 -19 -22 -26 -29 -30 -30 -30 -30 -28 -24 -19 -14 -10 -9 -8 -8 -8 -7 -7 -8 -9 -9 -9 -9 -9 -9 -9 -8 -8 -8 -7 -7 -8 -9 -12 -16 -19 -21 -21 -20 -19 -17 -14 -12 -9 -7 -7 -8 -10 -12 -12 -11 -9 -6 -1 2 5 7 7 8 8 6 5 4 3 1 0 -1 -4 -6 -8 -7 -6 -5 -3 -0 4 10 16 22 27 30 34 34 32 29 27 28 27 28 31 32 35 37 40 44 51 56 59 60 60 58 55 50 46 43 41 41 41 40 36 31 24 18 14 10 9 8 8 7 5 4 4 3 4 5 6 7 6 4 1 -2 -3 -2 0 1 -2 -6 -9 -11 -12 -12 -12 -10 -8 -7 -5 -2 0 3 7 10 13 16 17 16 14 11 7 3 -2 -6 -7 -6 -1 4 10 16 22 27 32 37 42 46 51 55 59 61 62 61 60 58 56 53 49 45 41 37 33 29 25 20 18 17 17 18 18 17 16 15 15 17 18 18 17 16 14 13 11 9 6 3 1 -0 -1 -2 -3 -5 -8 -11 -13 -15 -17 -17 -17 -16 -12 -6 -4 -6 -9 -11 -11 -7 0 7 11 10 8 5 3 1 0 -1 -3 -4 -6 -8 -9 -10 -11 -10 -9 -10 -10 -9 -7 -4 -3 -5 -7 -9 -10 -8 -4 -0 0 -3 -6 -8 -7 -7 -7 -9 -9 -8 -7 -6 -6 -6 -5 -4 -2 -1 -2 -4 -5 -6 -4 -1 2 5 8 10 12 12 11 9 6 4 1 -4 -9 -12 -7 -0 3 1 -5 -10 -10 -9 -6 -3 0 3 3 2 0 -2 -5 -8 -10 -11 -12 -12 -12 -12 -12 -12 -12 -12 -13 -15 -16 -17 -17 -14 -15 -15 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -15 -14 -14 -14 -16 -18 -20 -22 -22 -20 -18 -17 -17 -17 -17 -17 -16 -13 -10 -9 -10 -13 -17 -22 -24 -25 -25 -25 -26 -26 -25 -24 -20 -17 -14 -14 -14 -14 -14 -14 -14 -14 -12 -10 -6 -2 0 1 -0 -2 -2 0 3 6 7 6 4 1 -2 -4 -6 -8 -12 -16 -21 -25 -27 -28 -29 -29 -29 -27 -25 -22 -18 -15 -12 -9 -7 -5 -4 -4 -5 -5 -6 -6 -7 -7 -8 -8 -7 -7 -6 -5 -5 -5 -6 -8 -10 -13 -15 -16 -18 -19 -19 -17 -14 -11 -8 -6 -5 -6 -7 -9 -10 -10 -9 -6 -3 0 3 5 8 8 8 8 6 4 3 1 -1 -4 -5 -5 -4 -4 -4 -3 -2 2 7 13 18 25 32 36 36 35 32 32 31 31 33 34 35 38 40 44 49 54 58 60 61 59 56 51 48 45 43 40 40 40 38 34 28 21 15 10 7 5 5 4 3 1 -0 -1 -1 -0 0 1 -1 -3 -5 -6 -6 -0 4 3 -0 -5 -9 -12 -15 -16 -17 -16 -14 -13 -12 -11 -10 -9 -8 -5 -2 2 6 9 10 10 9 6 2 -1 -4 -4 -3 -1 2 6 11 17 23 29 34 40 44 49 53 56 58 58 57 57 56 55 53 51 48 44 40 36 30 25 21 19 19 20 20 19 18 17 18 19 20 20 20 19 17 15 14 12 9 6 3 1 0 -0 -1 -2 -4 -7 -10 -13 -15 -17 -18 -17 -15 -10 -6 -4 -6 -9 -12 -11 -8 -2 6 9 8 6 4 2 1 0 -1 -2 -3 -5 -7 -9 -10 -11 -10 -9 -9 -9 -9 -6 -3 -3 -4 -7 -10 -10 -7 -4 -0 0 -4 -7 -8 -8 -8 -9 -9 -9 -7 -6 -6 -6 -6 -5 -4 -3 -3 -4 -7 -8 -7 -5 -3 0 4 7 9 11 11 10 8 7 7 7 5 -2 -11 -13 -9 -6 -8 -11 -11 -11 -10 -8 -5 -2 2 4 3 0 -3 -6 -9 -11 -12 -12 -12 -12 -12 -12 -12 -12 -13 -14 -15 -16 -17 -10 -11 -12 -13 -12 -13 -12 -12 -11 -10 -9 -9 -10 -10 -10 -10 -10 -12 -14 -16 -19 -19 -18 -17 -16 -16 -16 -18 -19 -20 -19 -17 -14 -13 -14 -16 -19 -21 -22 -24 -25 -28 -30 -31 -29 -26 -23 -21 -21 -22 -24 -26 -26 -26 -26 -24 -20 -16 -12 -8 -5 -3 -3 -1 1 3 5 7 7 6 4 2 1 0 -1 -4 -7 -12 -16 -20 -23 -24 -25 -26 -27 -26 -26 -24 -22 -18 -13 -9 -6 -5 -4 -3 -3 -2 -3 -3 -3 -4 -4 -4 -4 -4 -4 -4 -5 -5 -5 -6 -6 -7 -9 -11 -13 -16 -17 -18 -16 -13 -9 -6 -3 -2 -3 -4 -5 -7 -8 -9 -8 -7 -4 0 2 4 6 7 6 8 8 6 1 -2 -2 -2 -1 -1 -2 -3 -2 0 4 9 17 25 31 36 38 37 36 36 36 36 37 37 38 40 44 49 53 58 62 63 62 58 55 52 49 46 41 39 39 39 37 31 24 17 10 5 3 2 1 -0 -2 -3 -4 -5 -5 -5 -5 -6 -8 -9 -8 -4 4 7 6 2 -2 -6 -10 -13 -15 -17 -18 -18 -17 -16 -15 -14 -13 -13 -12 -11 -10 -7 -4 -1 2 4 4 3 2 0 -1 -2 -2 -2 -0 2 5 10 16 22 29 36 41 46 50 53 54 53 53 52 52 52 52 51 49 46 42 37 31 26 23 22 22 21 21 20 20 21 22 23 23 22 21 19 18 16 14 12 9 5 3 1 0 0 0 -1 -2 -5 -9 -12 -14 -16 -17 -17 -14 -9 -5 -3 -6 -10 -12 -12 -10 -4 3 6 7 5 2 1 0 0 -0 -1 -1 -3 -5 -8 -10 -10 -10 -8 -8 -8 -8 -5 -2 -1 -4 -7 -9 -10 -7 -4 -0 -2 -5 -8 -9 -9 -10 -10 -10 -8 -7 -6 -6 -7 -6 -6 -5 -4 -5 -6 -9 -10 -9 -7 -4 -1 3 6 8 9 8 6 5 5 6 6 4 -1 -8 -13 -15 -13 -11 -11 -9 -8 -8 -7 -6 -3 0 4 3 -0 -4 -7 -10 -11 -11 -12 -12 -12 -12 -12 -12 -13 -14 -15 -16 -17 -10 -11 -11 -11 -10 -10 -10 -9 -9 -8 -8 -8 -8 -7 -6 -5 -6 -7 -9 -10 -12 -12 -12 -12 -13 -13 -13 -16 -18 -20 -21 -21 -19 -17 -15 -14 -14 -16 -17 -20 -22 -24 -25 -25 -24 -23 -21 -20 -21 -22 -24 -27 -30 -31 -31 -31 -30 -28 -25 -22 -18 -15 -11 -8 -6 -4 -1 1 2 3 2 2 2 2 2 0 -2 -5 -8 -11 -15 -17 -19 -21 -22 -23 -24 -24 -23 -21 -18 -14 -11 -9 -7 -5 -4 -2 -1 -1 -1 -1 -0 -1 -1 -1 -2 -2 -3 -3 -3 -4 -4 -4 -5 -6 -7 -9 -11 -13 -14 -14 -13 -10 -7 -3 -1 1 2 1 -0 -2 -5 -8 -10 -9 -9 -6 -2 3 6 7 8 8 7 4 2 2 2 3 2 -1 -2 -2 -1 2 8 15 23 30 36 38 39 39 40 40 42 42 42 43 46 51 55 59 63 66 65 62 59 56 53 49 44 39 38 39 38 34 27 20 12 5 1 -0 -2 -2 -4 -5 -6 -7 -8 -9 -10 -10 -11 -10 -6 0 6 8 7 4 1 -2 -5 -9 -12 -15 -17 -19 -19 -19 -18 -17 -16 -15 -15 -15 -14 -13 -12 -10 -7 -5 -3 -1 0 1 1 -0 -1 -2 -2 -2 -2 -0 2 7 13 20 27 34 40 45 48 49 49 48 48 48 49 50 50 49 46 41 36 31 27 25 24 24 23 22 22 23 25 25 25 25 23 22 20 19 17 15 12 8 5 2 0 0 1 1 1 -1 -4 -7 -11 -14 -16 -17 -16 -12 -8 -3 -3 -6 -10 -12 -12 -11 -6 0 4 5 2 0 -1 -1 -0 0 1 0 -1 -3 -6 -8 -9 -9 -8 -7 -8 -7 -4 -0 0 -3 -7 -9 -10 -8 -4 -2 -3 -6 -9 -10 -11 -11 -11 -9 -7 -7 -7 -7 -7 -7 -6 -6 -5 -6 -8 -10 -11 -10 -8 -5 -1 3 6 7 6 4 2 2 2 2 1 -2 -4 -6 -9 -13 -13 -10 -7 -5 -5 -5 -5 -5 -4 -1 2 2 -1 -5 -8 -10 -10 -11 -11 -12 -12 -12 -12 -13 -13 -15 -16 -17 -12 -10 -9 -9 -9 -8 -7 -7 -8 -9 -11 -12 -11 -8 -5 -2 -4 -5 -6 -5 -5 -5 -6 -7 -8 -8 -9 -11 -13 -16 -19 -21 -21 -20 -18 -15 -13 -13 -14 -15 -17 -18 -18 -18 -17 -17 -17 -18 -18 -19 -21 -24 -26 -28 -30 -30 -30 -30 -29 -27 -25 -23 -19 -17 -14 -12 -10 -8 -6 -4 -3 -2 -1 0 1 1 0 -1 -3 -5 -8 -11 -13 -14 -16 -18 -19 -20 -20 -20 -18 -17 -16 -15 -13 -11 -9 -7 -4 -3 -1 -1 0 1 1 1 1 0 0 0 -0 -1 -2 -3 -4 -4 -4 -4 -6 -8 -10 -11 -12 -11 -10 -8 -5 -2 2 4 5 5 3 -0 -4 -6 -8 -9 -9 -7 -3 -1 1 2 2 3 3 4 5 5 5 2 0 -0 -0 1 3 8 13 20 27 32 36 39 41 42 44 46 47 47 50 54 57 61 65 68 68 66 62 59 55 52 47 41 38 39 38 35 30 23 15 7 1 -2 -4 -4 -5 -6 -7 -8 -10 -11 -13 -13 -11 -9 -4 3 6 8 9 8 5 2 -1 -4 -7 -11 -14 -17 -19 -20 -20 -19 -18 -17 -16 -16 -16 -16 -16 -14 -13 -11 -9 -7 -6 -4 -2 -1 -1 -0 -0 -1 -2 -4 -6 -6 -4 1 7 14 21 28 35 40 43 44 44 45 46 47 48 48 47 44 40 35 31 29 28 27 26 25 25 26 27 28 28 27 25 24 22 21 20 18 15 11 8 4 1 -0 -0 1 2 2 -0 -3 -6 -10 -13 -15 -16 -15 -11 -6 -3 -4 -6 -10 -12 -12 -11 -8 -2 2 1 -1 -3 -4 -3 -2 0 2 2 1 -2 -4 -7 -8 -8 -7 -6 -7 -6 -3 2 1 -3 -7 -10 -10 -7 -4 -3 -4 -7 -10 -11 -12 -12 -11 -9 -7 -7 -7 -8 -8 -8 -7 -7 -6 -7 -10 -11 -12 -11 -9 -6 -1 3 5 5 2 0 -1 -1 -1 -2 -5 -7 -8 -7 -10 -14 -13 -10 -7 -4 -3 -2 -2 -3 -4 -2 -0 1 -2 -6 -8 -9 -10 -10 -11 -12 -12 -13 -13 -14 -15 -16 -17 -11 -9 -7 -8 -8 -6 -5 -5 -7 -9 -10 -9 -8 -6 -5 -2 -3 -5 -6 -4 -2 -2 -3 -5 -7 -8 -8 -8 -10 -13 -16 -19 -20 -20 -19 -18 -15 -13 -12 -12 -12 -13 -13 -13 -13 -13 -13 -15 -16 -17 -18 -20 -22 -24 -25 -26 -26 -26 -25 -25 -25 -23 -21 -20 -18 -17 -16 -14 -13 -12 -10 -8 -7 -5 -3 -1 -1 -0 -1 -2 -4 -6 -7 -8 -10 -11 -12 -13 -14 -14 -14 -15 -16 -17 -17 -16 -14 -12 -10 -7 -6 -4 -3 -2 -1 0 1 2 2 3 3 3 1 -1 -2 -3 -3 -3 -3 -3 -4 -5 -7 -8 -10 -10 -9 -6 -3 1 4 6 7 6 4 2 -1 -3 -5 -6 -6 -6 -6 -6 -4 -2 0 2 4 5 6 6 6 4 2 1 1 3 6 10 16 22 29 34 38 40 42 46 48 49 53 57 61 63 67 71 70 68 64 60 56 53 50 45 41 39 37 35 31 25 17 9 2 -3 -5 -6 -6 -6 -7 -8 -10 -12 -14 -13 -11 -7 -2 3 6 9 11 11 9 6 4 1 -2 -6 -10 -13 -17 -19 -21 -21 -20 -19 -18 -17 -17 -17 -17 -17 -16 -15 -13 -12 -11 -10 -8 -6 -3 -1 1 1 1 -2 -5 -9 -12 -12 -10 -7 -1 5 12 19 25 30 33 35 37 40 42 45 46 45 42 39 36 34 33 31 30 29 28 29 30 30 30 29 27 26 24 23 22 20 18 15 11 8 4 1 -1 -1 0 2 2 1 -1 -5 -8 -12 -14 -15 -14 -11 -6 -3 -3 -6 -10 -11 -12 -12 -9 -4 -0 -1 -3 -5 -7 -6 -3 -1 2 3 2 -0 -3 -5 -7 -7 -6 -5 -6 -7 -2 2 2 -2 -7 -11 -10 -8 -5 -4 -5 -8 -11 -12 -13 -13 -10 -8 -8 -8 -9 -9 -9 -9 -9 -8 -7 -9 -10 -11 -12 -12 -10 -6 -2 2 3 1 -1 -2 -2 -2 -3 -6 -8 -10 -10 -12 -15 -16 -15 -12 -9 -5 -2 -0 1 -1 -3 -3 -2 -1 -4 -7 -8 -9 -10 -10 -11 -12 -13 -13 -14 -15 -16 -17 -12 -7 -5 -6 -9 -9 -8 -8 -9 -9 -6 -4 -4 -4 -5 -5 -7 -8 -7 -6 -4 -4 -5 -6 -8 -9 -9 -10 -11 -12 -15 -17 -18 -18 -19 -19 -17 -15 -13 -11 -10 -10 -10 -11 -11 -11 -11 -13 -14 -16 -17 -18 -19 -21 -22 -22 -23 -22 -21 -20 -20 -19 -17 -16 -15 -15 -15 -15 -15 -15 -15 -14 -13 -12 -9 -7 -5 -3 -2 -1 -1 -2 -3 -3 -4 -5 -6 -6 -6 -7 -8 -9 -12 -14 -16 -16 -15 -14 -13 -12 -11 -10 -9 -7 -6 -4 -2 -0 2 3 4 5 4 3 2 -0 -2 -2 -2 -2 -1 -1 -2 -4 -6 -8 -9 -9 -6 -3 -0 3 5 5 6 6 5 3 2 1 -1 -3 -5 -7 -7 -7 -5 -3 -0 2 3 5 6 7 6 4 2 -0 -0 3 8 14 20 25 29 32 36 41 45 48 52 58 62 65 69 73 71 68 64 61 57 54 51 49 46 41 37 35 32 27 20 13 4 -2 -7 -8 -8 -7 -7 -8 -10 -12 -13 -12 -9 -5 -1 3 7 10 12 13 12 10 8 5 2 -2 -5 -9 -13 -16 -19 -21 -21 -21 -20 -18 -18 -17 -17 -17 -17 -17 -16 -15 -14 -14 -13 -11 -9 -6 -2 2 3 2 -1 -5 -10 -14 -16 -17 -16 -14 -10 -5 1 7 13 18 22 25 28 32 35 37 39 39 38 37 36 35 34 34 33 32 32 32 32 31 29 28 26 25 24 23 21 18 15 12 8 4 0 -2 -2 -0 2 3 2 0 -3 -7 -11 -13 -15 -14 -10 -6 -3 -3 -6 -9 -11 -12 -12 -9 -4 -1 -1 -3 -7 -9 -8 -6 -2 1 2 2 0 -2 -4 -6 -6 -5 -4 -5 -6 -1 3 2 -3 -8 -11 -10 -8 -6 -5 -7 -10 -12 -14 -14 -13 -11 -9 -10 -12 -12 -12 -12 -12 -12 -9 -9 -10 -11 -11 -12 -12 -10 -7 -3 0 -0 -2 -3 -3 -3 -4 -6 -9 -11 -11 -13 -15 -17 -17 -17 -14 -9 -4 -0 2 3 1 -2 -5 -3 -3 -5 -7 -9 -9 -10 -10 -11 -12 -13 -14 -15 -16 -17 -20 -17 -15 -14 -13 -11 -10 -10 -9 -9 -8 -7 -7 -7 -8 -9 -9 -10 -9 -8 -8 -7 -6 -7 -9 -10 -9 -10 -11 -12 -13 -14 -14 -14 -15 -16 -16 -15 -13 -11 -9 -8 -8 -8 -8 -8 -9 -10 -12 -14 -15 -17 -18 -20 -21 -22 -22 -21 -19 -17 -15 -13 -12 -11 -9 -8 -8 -9 -11 -12 -14 -15 -16 -17 -16 -14 -12 -9 -7 -4 -2 -1 -1 -1 -2 -2 -1 -1 -1 -2 -3 -4 -6 -8 -10 -11 -11 -12 -12 -12 -12 -12 -12 -12 -11 -10 -8 -5 -3 -0 2 4 5 6 6 4 3 1 -0 -1 -0 0 1 1 -1 -3 -6 -7 -6 -5 -4 -0 1 2 4 5 6 6 6 5 4 1 -1 -3 -5 -6 -7 -6 -4 -3 -1 1 4 6 7 5 3 1 -0 1 3 7 11 16 22 27 31 36 39 43 47 52 57 62 68 74 74 69 65 61 58 56 54 54 52 45 39 36 33 29 23 17 9 0 -6 -10 -10 -9 -8 -8 -10 -12 -13 -11 -7 -3 -0 3 7 11 14 15 15 14 12 9 6 2 -1 -5 -9 -12 -16 -19 -21 -22 -21 -20 -19 -18 -17 -17 -17 -18 -17 -17 -16 -15 -15 -15 -13 -11 -7 -1 2 4 3 0 -4 -8 -13 -16 -18 -19 -18 -17 -16 -13 -8 -1 4 9 13 15 17 20 22 24 26 28 28 30 31 34 36 36 35 34 33 32 31 29 28 27 27 25 24 22 19 16 12 8 4 -0 -3 -3 -1 1 3 4 1 -2 -6 -10 -13 -15 -14 -10 -6 -3 -3 -6 -9 -12 -13 -12 -8 -2 2 2 -2 -7 -10 -10 -8 -5 -1 1 1 1 -1 -4 -5 -6 -5 -3 -6 -5 -1 4 3 -3 -8 -11 -11 -9 -7 -8 -10 -12 -14 -16 -16 -15 -13 -13 -15 -17 -17 -17 -17 -17 -13 -12 -11 -10 -11 -12 -12 -12 -10 -7 -4 -2 -3 -4 -5 -5 -5 -7 -9 -12 -13 -14 -15 -17 -18 -17 -17 -13 -7 -1 1 4 5 2 -3 -5 -4 -4 -6 -8 -9 -9 -10 -10 -12 -13 -15 -16 -17 -17 -21 -18 -16 -14 -12 -10 -9 -9 -8 -9 -9 -8 -7 -7 -8 -9 -9 -8 -8 -8 -9 -8 -7 -7 -7 -8 -7 -7 -8 -9 -10 -11 -10 -10 -9 -10 -10 -10 -9 -7 -5 -5 -4 -4 -4 -5 -5 -6 -7 -9 -12 -14 -17 -20 -22 -22 -22 -21 -19 -16 -13 -11 -9 -7 -5 -3 -1 -1 -3 -5 -7 -10 -13 -16 -17 -17 -16 -15 -14 -12 -9 -8 -6 -4 -2 0 2 2 3 3 2 1 -0 -1 -3 -4 -5 -6 -7 -8 -9 -10 -11 -13 -13 -13 -12 -10 -9 -6 -4 -2 0 3 5 6 6 6 5 3 2 2 2 3 3 2 -0 -2 -3 -3 -3 -2 -1 0 0 3 5 6 6 6 6 4 2 1 -1 -3 -4 -5 -6 -6 -5 -2 -0 2 4 4 3 2 1 1 -0 1 4 8 14 20 25 31 36 40 44 47 51 56 62 69 73 71 67 62 60 59 58 59 56 50 42 38 34 31 26 22 15 5 -4 -10 -12 -11 -10 -10 -11 -13 -13 -10 -6 -2 1 4 9 12 15 17 17 16 15 12 9 6 3 -1 -4 -8 -11 -15 -18 -20 -22 -22 -21 -20 -18 -18 -17 -17 -17 -17 -17 -17 -16 -16 -16 -14 -12 -7 -2 2 4 3 1 -3 -7 -11 -15 -17 -18 -19 -19 -19 -18 -14 -8 -3 2 4 4 4 4 5 6 7 9 11 16 23 30 34 36 36 35 34 32 31 30 29 28 28 26 25 23 20 17 13 8 4 -0 -3 -4 -2 1 4 4 2 -1 -5 -9 -13 -14 -14 -11 -6 -3 -3 -5 -9 -12 -13 -11 -5 1 5 4 -1 -6 -10 -11 -10 -7 -4 -1 0 1 -1 -3 -5 -6 -4 -4 -6 -5 -1 4 1 -5 -10 -12 -12 -10 -10 -12 -14 -15 -17 -19 -19 -17 -16 -17 -19 -20 -22 -22 -21 -18 -16 -14 -12 -11 -11 -12 -13 -12 -10 -7 -5 -4 -6 -7 -7 -7 -9 -11 -13 -13 -14 -16 -17 -19 -16 -15 -13 -9 -2 0 3 5 6 3 -3 -5 -6 -5 -7 -8 -9 -10 -10 -11 -12 -14 -16 -17 -18 -21 -19 -19 -19 -18 -13 -10 -8 -7 -6 -6 -4 -3 -3 -4 -6 -8 -6 -6 -7 -9 -8 -6 -6 -5 -5 -3 -4 -5 -6 -7 -8 -8 -7 -5 -4 -4 -3 -2 -1 -1 -0 1 1 1 0 -0 0 -1 -2 -5 -8 -13 -18 -21 -21 -21 -20 -19 -17 -15 -13 -10 -8 -5 -2 1 4 4 3 1 -3 -6 -9 -11 -13 -15 -15 -16 -16 -15 -14 -13 -11 -8 -5 -2 -0 2 3 3 4 3 3 3 3 3 3 1 -1 -2 -4 -5 -7 -8 -9 -10 -10 -11 -10 -10 -8 -7 -5 -2 1 4 6 8 8 7 6 6 6 7 6 5 4 2 -0 -1 -1 -0 0 -1 2 5 6 6 6 6 6 4 3 2 -0 -1 -2 -4 -5 -6 -4 -3 -2 -0 0 1 1 1 1 -2 -3 -1 2 6 12 17 25 33 39 43 47 50 53 58 63 67 67 66 64 64 64 63 61 56 50 43 38 36 34 31 26 21 12 3 -6 -12 -13 -12 -12 -13 -15 -14 -9 -5 -1 2 6 11 14 17 18 19 18 17 15 12 9 6 3 -1 -4 -7 -11 -14 -17 -20 -22 -22 -21 -20 -19 -18 -17 -17 -17 -17 -17 -17 -17 -16 -16 -15 -13 -8 -2 2 4 4 1 -2 -6 -10 -14 -16 -17 -18 -19 -20 -19 -16 -11 -5 -0 0 -2 -4 -7 -8 -8 -7 -5 -2 5 14 23 30 34 36 35 34 32 31 30 30 30 29 28 26 24 21 18 14 9 4 -0 -3 -4 -3 1 4 5 3 -0 -5 -9 -12 -14 -14 -11 -6 -3 -3 -5 -9 -12 -12 -9 -3 4 6 4 -0 -5 -9 -10 -10 -9 -6 -3 -1 -0 -1 -3 -5 -6 -5 -5 -7 -7 0 1 -2 -8 -13 -15 -14 -14 -15 -16 -16 -18 -21 -21 -20 -18 -17 -18 -21 -23 -25 -24 -23 -21 -18 -15 -13 -12 -12 -13 -13 -12 -10 -7 -6 -6 -8 -9 -10 -11 -13 -14 -14 -15 -16 -16 -19 -17 -13 -9 -6 -3 -1 0 2 4 5 2 -2 -5 -6 -6 -8 -9 -10 -10 -10 -11 -13 -16 -18 -19 -23 -21 -22 -22 -21 -16 -12 -10 -8 -6 -4 -0 1 1 0 -2 -6 -6 -7 -8 -10 -9 -8 -6 -5 -4 -1 -1 -2 -3 -4 -6 -6 -5 -3 -1 1 1 1 1 2 3 5 6 5 5 4 5 5 3 1 -2 -7 -11 -14 -16 -17 -16 -16 -16 -16 -15 -13 -10 -7 -3 0 3 6 6 5 3 0 -1 -3 -6 -7 -8 -9 -11 -13 -13 -13 -14 -13 -12 -11 -8 -4 -2 0 1 2 2 3 5 8 9 6 4 3 2 1 0 -0 -2 -4 -6 -7 -9 -10 -10 -10 -9 -8 -7 -5 -2 1 4 7 8 9 10 11 12 12 11 9 6 4 2 0 0 -1 1 4 5 4 3 5 7 7 6 4 2 0 -1 -2 -3 -4 -4 -4 -4 -3 -4 -3 -2 -1 -1 -3 -4 -4 -3 -0 4 7 14 22 30 39 45 49 52 56 60 64 67 68 69 70 69 66 63 58 53 48 43 41 40 36 31 26 19 11 2 -7 -13 -15 -16 -17 -17 -15 -10 -5 -1 3 8 13 17 19 20 20 19 18 17 14 12 9 6 3 -0 -3 -7 -10 -13 -17 -19 -21 -22 -22 -21 -20 -18 -17 -17 -17 -18 -18 -17 -17 -17 -17 -16 -13 -9 -3 2 4 4 2 -1 -5 -9 -12 -15 -17 -18 -18 -19 -19 -17 -12 -5 -1 -0 -2 -6 -9 -11 -12 -13 -12 -9 -2 7 15 23 30 34 35 34 33 32 32 31 31 30 29 27 25 22 18 14 10 5 -0 -4 -5 -3 1 4 5 4 -0 -5 -9 -12 -14 -14 -11 -7 -3 -3 -5 -9 -12 -12 -8 -1 5 7 5 0 -5 -8 -10 -10 -10 -9 -6 -3 -2 -2 -4 -6 -6 -6 -7 -10 -7 -3 -3 -9 -15 -18 -18 -18 -17 -17 -18 -19 -21 -22 -21 -20 -18 -18 -20 -24 -27 -27 -26 -24 -22 -19 -16 -13 -12 -13 -14 -13 -12 -10 -8 -7 -9 -10 -11 -13 -15 -16 -16 -16 -16 -15 -19 -18 -13 -7 -4 -3 -3 -2 -1 1 3 3 1 -2 -6 -7 -8 -9 -10 -10 -10 -10 -12 -15 -17 -19 -26 -24 -23 -22 -20 -17 -14 -13 -13 -11 -7 -3 -1 0 1 -1 -5 -8 -8 -9 -12 -14 -11 -10 -8 -7 -5 -4 -4 -4 -4 -4 -3 -2 -1 -0 1 1 0 -1 -0 1 2 3 3 3 2 3 3 2 1 -2 -5 -6 -9 -11 -12 -12 -12 -12 -13 -14 -13 -11 -8 -5 -2 1 3 5 5 5 4 3 3 2 1 1 -1 -2 -4 -6 -7 -9 -11 -13 -14 -14 -12 -9 -7 -5 -4 -3 -1 3 8 10 9 8 7 5 4 4 5 5 4 1 -1 -4 -6 -7 -8 -8 -9 -9 -10 -9 -8 -6 -2 2 6 9 12 14 16 17 17 14 12 9 7 5 3 3 3 3 3 2 3 5 7 9 8 6 4 1 -1 -3 -2 -2 -2 -3 -4 -5 -5 -4 -4 -3 -4 -4 -5 -6 -5 -3 -2 2 8 16 26 35 42 48 54 58 63 67 70 72 74 72 69 65 62 58 55 51 48 44 40 34 27 21 15 10 1 -8 -15 -19 -20 -20 -17 -12 -6 -0 5 11 16 19 20 20 20 20 19 18 16 14 11 8 6 3 -0 -3 -6 -9 -12 -15 -18 -21 -22 -23 -22 -21 -19 -18 -17 -17 -17 -18 -18 -17 -17 -17 -17 -15 -10 -4 1 4 5 3 0 -4 -8 -11 -14 -16 -17 -18 -19 -19 -18 -13 -6 -1 1 -1 -5 -8 -10 -12 -13 -13 -11 -7 -0 8 16 23 29 33 34 33 33 32 32 32 31 30 28 25 23 19 15 10 5 0 -4 -5 -3 1 4 5 3 -1 -5 -9 -12 -14 -14 -12 -8 -3 -3 -6 -9 -12 -12 -7 1 6 8 6 1 -4 -7 -10 -11 -11 -11 -9 -6 -3 -3 -5 -6 -7 -7 -11 -14 -10 -8 -9 -14 -15 -16 -16 -17 -18 -18 -20 -22 -22 -22 -20 -19 -18 -20 -24 -28 -29 -29 -27 -26 -23 -19 -15 -12 -12 -14 -14 -13 -11 -10 -9 -10 -11 -13 -15 -19 -20 -19 -18 -17 -17 -20 -20 -15 -7 -4 -4 -3 -3 -3 -1 0 1 1 0 -3 -6 -8 -9 -10 -11 -10 -10 -11 -13 -16 -19 -29 -26 -24 -22 -19 -17 -17 -17 -17 -17 -15 -13 -8 -5 -4 -6 -9 -8 -6 -6 -8 -11 -11 -12 -13 -13 -14 -12 -12 -11 -11 -10 -9 -8 -7 -5 -5 -5 -5 -6 -6 -6 -5 -5 -5 -5 -4 -4 -4 -5 -6 -8 -9 -10 -12 -13 -14 -15 -13 -13 -13 -13 -13 -12 -9 -6 -4 -3 -2 -0 1 3 3 4 5 6 7 7 7 5 4 2 1 -2 -5 -8 -10 -12 -12 -12 -11 -10 -10 -10 -8 -4 0 5 7 8 8 6 5 6 8 9 8 7 5 2 -1 -3 -3 -4 -5 -6 -8 -10 -11 -11 -10 -7 -3 2 6 10 14 16 18 18 18 16 15 12 10 8 6 4 2 1 2 3 6 8 10 10 8 6 2 -1 -1 -2 -2 -2 -3 -4 -6 -6 -6 -6 -5 -4 -5 -6 -8 -7 -7 -5 -2 2 9 18 26 34 42 48 53 59 63 67 70 71 69 67 64 61 59 57 53 48 42 35 27 20 15 10 4 -4 -11 -17 -21 -22 -20 -14 -8 0 8 15 18 20 21 21 21 21 20 19 18 16 13 11 8 5 3 1 -2 -5 -8 -11 -14 -17 -20 -22 -23 -23 -22 -20 -19 -18 -17 -17 -18 -18 -18 -17 -18 -17 -16 -12 -6 1 5 6 4 1 -4 -7 -11 -13 -15 -17 -18 -19 -20 -19 -13 -7 -1 1 -2 -5 -8 -10 -11 -13 -13 -12 -10 -5 0 7 15 23 29 32 32 32 32 32 32 31 30 28 26 23 20 16 11 6 0 -4 -4 -3 1 4 5 3 -1 -6 -10 -13 -14 -14 -12 -8 -4 -3 -6 -10 -13 -11 -6 2 8 10 6 1 -3 -7 -10 -12 -13 -13 -12 -8 -5 -4 -6 -7 -9 -11 -17 -17 -13 -9 -11 -12 -13 -16 -18 -19 -20 -22 -23 -23 -22 -21 -20 -19 -20 -23 -27 -29 -31 -31 -30 -26 -21 -16 -13 -12 -15 -15 -14 -13 -13 -12 -13 -14 -15 -16 -22 -24 -23 -21 -20 -21 -22 -21 -16 -9 -5 -4 -4 -4 -4 -3 -1 -0 0 -0 -1 -4 -7 -9 -11 -11 -10 -10 -10 -12 -15 -18 -28 -26 -24 -22 -20 -18 -19 -20 -20 -19 -19 -18 -16 -13 -11 -11 -13 -12 -13 -13 -13 -12 -13 -14 -15 -16 -18 -17 -15 -14 -13 -13 -12 -11 -11 -9 -9 -9 -9 -9 -10 -10 -10 -10 -10 -10 -9 -9 -9 -10 -11 -12 -13 -15 -16 -17 -18 -19 -19 -18 -17 -17 -17 -15 -13 -10 -7 -6 -6 -6 -5 -4 -2 0 3 5 8 9 10 10 9 8 7 5 2 0 -2 -4 -6 -7 -8 -9 -11 -12 -12 -11 -8 -5 -2 1 2 3 4 5 7 8 9 10 9 7 4 3 2 2 2 -0 -3 -5 -8 -10 -12 -12 -10 -6 -2 2 6 10 12 14 16 17 18 17 16 15 12 8 5 2 1 2 3 5 7 8 9 9 7 4 1 -1 -2 -3 -3 -3 -4 -5 -7 -7 -8 -7 -8 -9 -9 -9 -9 -8 -8 -8 -5 1 7 13 20 25 30 36 42 48 55 60 62 63 64 62 59 57 53 47 42 34 26 20 14 10 5 -1 -8 -13 -18 -22 -21 -17 -9 1 12 18 21 21 21 21 21 21 21 20 19 17 15 12 10 7 5 3 2 -1 -3 -6 -9 -12 -16 -19 -22 -24 -24 -23 -22 -20 -19 -18 -17 -17 -17 -17 -17 -18 -19 -18 -14 -7 0 5 6 4 0 -4 -7 -10 -13 -15 -17 -18 -19 -20 -18 -14 -7 -1 0 -2 -5 -8 -10 -11 -12 -13 -12 -11 -9 -6 -1 6 15 22 26 28 30 31 32 32 31 30 28 26 23 20 16 11 6 1 -3 -4 -2 1 4 4 2 -2 -6 -10 -13 -14 -14 -12 -8 -4 -4 -6 -11 -13 -11 -5 3 10 10 7 2 -4 -8 -11 -13 -15 -15 -14 -10 -7 -6 -7 -10 -12 -18 -20 -18 -12 -8 -8 -10 -14 -19 -21 -21 -21 -20 -21 -22 -22 -22 -21 -19 -20 -24 -28 -31 -33 -32 -28 -23 -19 -15 -13 -15 -16 -15 -15 -16 -15 -16 -18 -18 -18 -24 -27 -25 -23 -23 -26 -25 -22 -16 -12 -5 -3 -3 -4 -4 -4 -3 -2 -1 -1 -2 -3 -5 -9 -12 -10 -10 -10 -10 -11 -14 -18 -27 -26 -26 -25 -23 -21 -21 -20 -20 -21 -23 -26 -25 -22 -20 -19 -21 -19 -18 -17 -17 -17 -18 -18 -18 -18 -18 -18 -17 -16 -15 -14 -14 -14 -13 -12 -11 -10 -10 -10 -10 -10 -10 -11 -11 -11 -10 -10 -10 -10 -11 -12 -13 -14 -16 -17 -18 -20 -21 -21 -22 -22 -22 -21 -19 -16 -13 -10 -9 -10 -10 -10 -9 -7 -4 -1 3 6 8 10 10 10 9 8 6 5 4 3 1 -1 -2 -4 -6 -9 -11 -11 -11 -11 -11 -10 -7 -5 -2 -0 2 4 6 8 9 9 8 7 7 7 7 6 4 2 -0 -3 -7 -9 -10 -10 -8 -5 -2 0 2 5 7 11 14 15 15 15 13 11 8 5 3 1 -0 -1 1 1 4 6 8 8 7 3 -1 -3 -4 -4 -4 -4 -5 -5 -7 -7 -7 -8 -7 -8 -9 -10 -10 -10 -9 -8 -7 -5 -3 -1 3 8 14 20 29 37 44 51 57 57 53 51 47 42 39 33 27 22 17 13 8 2 -4 -9 -14 -19 -21 -19 -12 -0 12 19 22 21 21 22 22 22 22 21 20 19 17 14 12 9 7 6 5 3 1 -1 -4 -7 -10 -14 -18 -21 -24 -25 -25 -23 -21 -19 -18 -17 -17 -17 -17 -17 -18 -19 -20 -16 -9 0 5 5 3 -0 -4 -7 -9 -12 -14 -16 -18 -19 -19 -18 -14 -7 -2 -0 -2 -5 -8 -10 -11 -12 -12 -12 -11 -11 -11 -9 -3 6 13 19 22 25 27 29 31 31 30 28 26 23 20 17 12 7 2 -2 -4 -2 2 4 4 2 -2 -7 -10 -13 -14 -14 -11 -7 -4 -4 -7 -11 -13 -11 -5 5 10 10 6 1 -5 -9 -13 -15 -17 -17 -14 -11 -9 -9 -11 -13 -17 -21 -21 -17 -10 -6 -7 -12 -19 -22 -21 -19 -17 -17 -19 -22 -23 -22 -20 -19 -21 -25 -28 -31 -32 -29 -25 -20 -17 -14 -17 -18 -17 -17 -19 -19 -21 -22 -21 -20 -25 -27 -26 -24 -26 -29 -28 -26 -21 -17 -8 -4 -3 -4 -5 -5 -4 -3 -2 -2 -2 -3 -5 -8 -13 -10 -10 -10 -10 -11 -15 -20 -27 -28 -29 -28 -27 -25 -23 -22 -22 -22 -23 -23 -23 -22 -20 -19 -22 -21 -19 -18 -19 -20 -20 -20 -20 -20 -21 -19 -17 -16 -16 -16 -16 -16 -15 -14 -13 -12 -11 -10 -10 -10 -11 -11 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -11 -12 -13 -15 -16 -18 -20 -22 -24 -24 -23 -22 -19 -16 -14 -13 -13 -14 -15 -14 -12 -10 -7 -2 1 5 7 9 9 8 7 6 5 3 2 0 0 -1 -2 -5 -7 -7 -7 -8 -11 -13 -13 -12 -10 -8 -6 -3 -0 1 3 4 5 6 7 9 9 10 10 9 8 6 3 -1 -4 -6 -7 -7 -7 -6 -6 -5 -3 0 4 7 8 8 8 8 7 7 5 3 -1 -3 -5 -5 -3 -1 3 7 8 7 4 0 -3 -5 -5 -5 -5 -4 -6 -6 -7 -8 -8 -9 -9 -10 -10 -10 -10 -10 -11 -11 -11 -10 -8 -6 -2 3 9 15 23 33 42 46 43 40 38 36 36 33 30 27 23 20 14 9 3 -2 -8 -13 -18 -18 -13 -3 10 18 20 20 20 22 23 23 23 23 22 20 18 16 13 11 9 8 7 6 5 3 1 -2 -5 -8 -12 -16 -20 -23 -25 -25 -24 -22 -19 -17 -17 -16 -16 -17 -17 -18 -20 -20 -17 -10 -1 4 4 2 -1 -4 -7 -9 -11 -14 -15 -17 -18 -19 -18 -14 -7 -2 -0 -2 -5 -9 -11 -12 -12 -12 -11 -11 -12 -13 -14 -10 -3 5 11 14 18 21 25 28 30 30 29 27 24 21 17 12 8 3 -1 -3 -1 2 4 4 1 -3 -7 -11 -13 -14 -13 -11 -7 -4 -4 -8 -12 -14 -12 -4 5 10 10 6 -0 -6 -10 -14 -16 -17 -16 -14 -12 -12 -13 -14 -16 -20 -22 -20 -14 -8 -7 -10 -17 -21 -21 -19 -17 -15 -17 -20 -22 -23 -21 -19 -19 -21 -24 -27 -30 -29 -27 -23 -18 -15 -17 -19 -20 -19 -23 -24 -25 -25 -23 -22 -23 -25 -26 -25 -27 -29 -30 -29 -27 -23 -15 -8 -4 -5 -6 -6 -5 -4 -3 -3 -3 -3 -4 -7 -11 -10 -11 -11 -12 -13 -18 -24 -29 -31 -31 -31 -31 -29 -27 -25 -24 -24 -24 -23 -22 -20 -17 -16 -18 -20 -18 -17 -18 -19 -20 -20 -20 -20 -20 -18 -16 -15 -16 -17 -17 -17 -18 -18 -17 -16 -15 -14 -14 -14 -15 -15 -15 -16 -16 -15 -14 -13 -12 -11 -9 -8 -7 -7 -7 -8 -9 -11 -13 -16 -19 -20 -22 -22 -22 -20 -18 -17 -16 -17 -17 -18 -18 -17 -15 -13 -10 -6 -3 1 3 5 6 7 7 5 1 -2 -3 -3 -3 -4 -4 -2 2 4 3 -3 -8 -11 -12 -12 -11 -10 -8 -5 -4 -3 -1 1 3 5 7 9 11 12 13 13 12 10 7 3 1 -1 -2 -4 -6 -8 -9 -8 -6 -4 -3 -3 -2 -1 1 3 5 4 1 -2 -5 -8 -9 -8 -4 1 5 7 6 3 0 -3 -4 -5 -6 -4 -5 -5 -6 -8 -9 -10 -10 -10 -10 -10 -11 -12 -13 -13 -12 -9 -6 -2 1 4 7 10 14 21 28 33 33 34 34 34 36 37 36 34 33 30 25 20 15 9 3 -3 -9 -13 -12 -6 8 16 18 16 16 19 22 23 24 24 23 22 20 18 16 13 11 10 9 8 7 6 4 2 -0 -3 -6 -10 -15 -19 -23 -25 -25 -24 -22 -19 -17 -16 -16 -16 -16 -17 -19 -20 -21 -19 -11 -2 2 3 0 -2 -4 -6 -8 -11 -13 -15 -16 -18 -18 -18 -14 -8 -3 -0 -2 -6 -9 -11 -12 -12 -11 -11 -11 -12 -14 -15 -13 -8 -1 4 8 11 15 19 25 28 29 29 27 24 20 17 12 8 3 -1 -2 -1 2 4 4 1 -4 -8 -12 -13 -14 -13 -10 -7 -4 -5 -8 -12 -15 -12 -4 4 9 9 4 -2 -7 -12 -15 -17 -17 -16 -14 -14 -15 -16 -17 -19 -20 -19 -19 -16 -13 -11 -14 -17 -20 -20 -18 -16 -16 -18 -21 -22 -21 -19 -17 -18 -20 -24 -28 -29 -28 -25 -21 -17 -17 -19 -22 -21 -23 -26 -28 -27 -25 -23 -22 -22 -25 -27 -27 -27 -27 -29 -29 -26 -19 -11 -5 -6 -7 -7 -7 -6 -5 -5 -5 -5 -6 -8 -13 -14 -14 -14 -15 -18 -22 -27 -28 -30 -31 -31 -31 -30 -29 -27 -26 -24 -24 -24 -24 -21 -18 -15 -15 -17 -17 -17 -18 -20 -21 -20 -19 -18 -18 -16 -14 -13 -13 -14 -15 -17 -18 -19 -20 -20 -19 -19 -19 -20 -20 -20 -21 -21 -20 -19 -18 -18 -16 -15 -13 -11 -9 -8 -7 -7 -7 -8 -9 -10 -12 -14 -15 -16 -17 -18 -18 -18 -18 -18 -19 -20 -20 -20 -19 -18 -16 -15 -13 -11 -8 -5 -1 2 4 5 3 -1 -4 -5 -5 -4 -3 1 6 10 11 9 6 2 -1 -3 -5 -7 -9 -9 -8 -7 -6 -5 -4 -2 0 3 5 8 10 12 14 15 14 12 10 9 7 5 2 -2 -6 -8 -9 -9 -11 -11 -11 -11 -9 -7 -1 1 2 0 -2 -5 -9 -11 -10 -6 -1 2 4 4 2 0 -2 -4 -6 -5 -5 -5 -6 -7 -8 -9 -10 -11 -11 -11 -11 -13 -13 -14 -13 -11 -9 -6 -2 2 7 11 15 19 24 28 32 36 38 39 40 41 42 43 44 44 40 36 31 25 19 13 6 -0 -5 -5 10 18 17 13 12 14 17 20 23 24 24 23 22 20 18 16 14 13 11 10 9 8 7 5 3 1 -1 -5 -9 -13 -18 -22 -24 -25 -24 -22 -19 -17 -16 -15 -15 -16 -18 -19 -21 -23 -19 -11 -4 0 1 -2 -3 -4 -6 -8 -10 -12 -13 -15 -17 -18 -17 -14 -9 -4 -1 -3 -6 -9 -12 -12 -11 -11 -10 -11 -13 -14 -15 -12 -7 -1 2 3 4 7 13 19 25 28 29 27 24 20 16 12 8 3 -0 -2 -1 2 3 3 0 -4 -9 -12 -14 -14 -13 -10 -6 -5 -6 -9 -13 -15 -12 -5 4 9 6 1 -4 -9 -13 -15 -16 -16 -15 -14 -16 -18 -19 -20 -20 -20 -22 -22 -19 -14 -12 -14 -17 -20 -20 -18 -17 -17 -18 -21 -21 -20 -18 -16 -17 -21 -25 -28 -29 -28 -26 -21 -18 -18 -22 -21 -21 -24 -28 -29 -27 -26 -23 -22 -25 -29 -27 -24 -24 -26 -27 -26 -20 -13 -7 -7 -8 -9 -9 -8 -7 -7 -9 -10 -10 -11 -16 -19 -20 -19 -21 -24 -24 -23 -26 -27 -28 -29 -29 -29 -29 -27 -25 -24 -24 -27 -27 -25 -22 -20 -18 -18 -19 -20 -21 -24 -24 -22 -21 -21 -23 -24 -20 -15 -11 -10 -12 -14 -15 -16 -17 -18 -18 -19 -21 -22 -21 -21 -21 -22 -21 -21 -21 -20 -20 -19 -17 -16 -15 -14 -13 -12 -11 -12 -13 -13 -13 -12 -11 -11 -11 -12 -14 -15 -16 -17 -17 -18 -19 -20 -20 -19 -18 -17 -17 -17 -16 -15 -12 -10 -7 -4 -3 -3 -5 -6 -6 -7 -3 1 6 8 11 14 13 12 9 7 3 -0 -3 -5 -6 -5 -5 -6 -6 -6 -6 -4 -2 0 2 5 8 11 13 14 13 13 12 10 9 5 2 -1 -3 -3 -6 -8 -11 -14 -15 -15 -11 -6 -3 -2 -2 -3 -6 -10 -12 -12 -9 -5 -1 2 3 3 1 -1 -4 -5 -5 -5 -6 -6 -7 -8 -10 -11 -11 -12 -12 -13 -14 -14 -14 -14 -12 -11 -8 -4 2 7 13 19 24 29 34 37 40 42 44 46 48 51 55 58 55 52 48 43 38 34 28 19 10 1 15 22 21 15 10 9 10 13 17 21 23 24 23 22 21 19 18 16 14 13 11 10 8 7 5 4 2 -0 -3 -7 -12 -16 -21 -23 -25 -24 -22 -20 -17 -15 -15 -15 -16 -18 -20 -23 -22 -18 -12 -5 -1 -2 -3 -4 -5 -6 -7 -9 -10 -12 -14 -16 -17 -17 -16 -11 -5 -2 -3 -6 -10 -12 -12 -11 -10 -10 -11 -13 -15 -15 -12 -4 2 4 2 -1 0 6 13 20 26 27 26 23 19 15 11 7 3 0 -2 -1 1 2 2 -1 -5 -9 -12 -14 -14 -13 -9 -6 -4 -5 -10 -14 -15 -12 -6 3 6 4 -1 -7 -11 -14 -15 -15 -14 -14 -16 -19 -21 -23 -23 -23 -23 -23 -21 -19 -16 -14 -15 -17 -20 -20 -19 -18 -18 -20 -22 -21 -19 -17 -17 -19 -22 -26 -30 -33 -31 -26 -21 -19 -22 -22 -21 -23 -27 -30 -30 -29 -26 -25 -27 -31 -29 -24 -22 -23 -23 -24 -21 -15 -8 -8 -10 -11 -11 -11 -10 -10 -13 -16 -16 -15 -19 -21 -23 -24 -27 -27 -24 -17 -22 -24 -24 -25 -25 -25 -25 -25 -23 -23 -25 -28 -28 -26 -26 -25 -25 -25 -26 -26 -25 -25 -25 -24 -24 -26 -29 -31 -28 -22 -15 -11 -11 -12 -13 -13 -14 -14 -15 -16 -17 -17 -17 -17 -18 -19 -19 -19 -19 -19 -19 -19 -18 -17 -17 -17 -16 -16 -16 -17 -18 -18 -17 -15 -13 -11 -10 -10 -11 -13 -15 -15 -16 -16 -17 -18 -19 -19 -18 -17 -17 -17 -18 -19 -19 -18 -17 -14 -13 -12 -11 -10 -9 -9 -6 -3 1 6 11 14 16 16 15 14 12 7 2 -3 -5 -3 -2 -3 -4 -6 -6 -7 -6 -6 -5 -3 -1 2 5 7 10 11 11 11 11 9 7 6 5 4 2 -1 -5 -9 -13 -17 -17 -16 -13 -11 -9 -6 -7 -9 -11 -14 -15 -12 -8 -3 1 5 7 6 3 -1 -4 -5 -6 -6 -7 -8 -9 -10 -12 -13 -14 -14 -15 -15 -15 -15 -15 -14 -13 -11 -6 0 7 14 21 26 31 36 40 43 45 49 54 60 65 66 63 59 55 52 50 49 48 42 29 7 14 22 25 21 15 9 6 6 8 13 18 21 23 23 23 22 21 19 17 16 14 12 10 8 7 6 4 2 0 -3 -6 -11 -15 -19 -22 -24 -24 -22 -20 -17 -15 -14 -15 -16 -18 -21 -23 -22 -18 -12 -5 -3 -4 -5 -6 -6 -7 -8 -9 -10 -11 -13 -15 -17 -18 -17 -11 -6 -3 -4 -7 -10 -12 -12 -11 -10 -10 -12 -14 -15 -15 -10 -2 5 7 3 -3 -5 -1 6 16 22 25 24 22 18 14 11 7 3 0 -1 -1 0 1 1 -2 -6 -10 -13 -15 -15 -12 -9 -5 -4 -6 -10 -14 -16 -13 -6 1 3 1 -5 -10 -13 -15 -15 -14 -13 -16 -20 -24 -27 -28 -27 -25 -23 -21 -20 -19 -17 -15 -15 -17 -19 -19 -19 -18 -20 -22 -22 -20 -18 -17 -17 -19 -24 -32 -38 -37 -33 -28 -24 -24 -24 -23 -24 -28 -33 -33 -30 -28 -28 -30 -33 -33 -29 -23 -19 -17 -20 -20 -16 -9 -11 -13 -14 -14 -14 -14 -15 -18 -21 -20 -19 -20 -22 -24 -26 -28 -27 -22 -15 -19 -20 -21 -21 -21 -21 -22 -23 -23 -23 -24 -25 -26 -27 -27 -27 -28 -30 -31 -30 -29 -27 -27 -26 -25 -25 -25 -28 -28 -24 -19 -15 -14 -14 -14 -15 -15 -15 -15 -16 -17 -17 -17 -17 -17 -17 -17 -16 -16 -16 -16 -17 -17 -15 -15 -16 -16 -16 -17 -18 -19 -21 -21 -18 -16 -15 -14 -12 -12 -13 -14 -15 -16 -16 -16 -17 -18 -18 -17 -16 -15 -15 -16 -19 -20 -21 -22 -21 -20 -19 -18 -17 -15 -14 -12 -9 -5 -1 5 9 12 14 15 17 16 13 8 3 -0 1 2 2 -0 -3 -4 -5 -5 -6 -7 -7 -6 -5 -3 -2 1 2 3 4 7 7 7 7 8 8 8 6 3 -2 -7 -13 -17 -19 -19 -19 -17 -15 -13 -11 -10 -13 -16 -18 -18 -13 -7 -0 5 7 5 2 -2 -5 -6 -6 -7 -7 -8 -9 -11 -13 -15 -16 -17 -17 -17 -17 -17 -18 -17 -17 -14 -9 -3 5 12 19 24 30 35 39 43 49 56 63 68 66 61 57 52 48 44 38 30 18 4 -8 -1 10 19 22 21 16 9 4 1 2 7 13 18 22 24 24 23 22 20 18 16 14 13 11 9 7 6 5 3 1 -2 -5 -9 -13 -17 -21 -23 -24 -22 -20 -17 -15 -14 -15 -16 -19 -21 -23 -22 -18 -11 -6 -4 -5 -6 -7 -7 -8 -8 -9 -9 -10 -12 -14 -17 -18 -17 -13 -7 -4 -4 -8 -10 -12 -11 -10 -10 -10 -12 -14 -16 -15 -9 -1 7 9 4 -3 -7 -7 -1 10 18 22 23 20 17 13 10 7 4 1 -1 -1 -1 -0 -1 -4 -8 -11 -14 -16 -15 -12 -8 -4 -3 -6 -11 -15 -17 -14 -7 -1 1 -3 -8 -13 -16 -17 -15 -14 -16 -20 -25 -29 -31 -31 -29 -25 -22 -21 -20 -19 -17 -15 -14 -16 -18 -19 -19 -19 -20 -22 -22 -20 -17 -16 -18 -22 -28 -36 -39 -37 -34 -30 -27 -26 -25 -26 -29 -34 -34 -31 -28 -29 -33 -34 -33 -28 -20 -13 -10 -14 -17 -17 -13 -14 -17 -19 -18 -20 -21 -21 -22 -24 -21 -20 -20 -21 -24 -25 -24 -22 -18 -12 -19 -20 -20 -20 -20 -21 -22 -24 -25 -25 -25 -25 -26 -26 -27 -29 -33 -35 -33 -30 -28 -29 -29 -28 -27 -26 -26 -27 -27 -24 -21 -19 -17 -16 -16 -17 -18 -18 -19 -20 -21 -21 -20 -19 -18 -17 -17 -16 -15 -15 -15 -16 -15 -14 -14 -14 -14 -14 -15 -16 -18 -19 -20 -19 -18 -17 -16 -15 -14 -14 -14 -15 -16 -17 -17 -17 -18 -18 -18 -17 -15 -14 -14 -16 -18 -20 -22 -23 -23 -22 -21 -21 -21 -21 -19 -16 -13 -10 -5 -1 4 7 10 12 14 13 12 9 7 6 6 6 4 1 0 -0 -1 -3 -4 -5 -6 -6 -6 -7 -6 -6 -5 -4 -1 -0 2 4 6 8 9 10 9 6 1 -5 -10 -15 -18 -21 -21 -21 -20 -18 -15 -13 -13 -16 -17 -17 -15 -9 -3 2 3 1 -1 -3 -5 -6 -7 -7 -8 -8 -9 -11 -14 -16 -18 -19 -19 -19 -20 -20 -21 -21 -21 -18 -15 -10 -3 4 11 19 25 31 36 43 51 58 62 59 54 49 43 36 23 7 -2 -8 -13 -20 -18 -12 -3 7 14 16 15 10 3 -3 -3 1 7 14 20 23 24 23 22 20 19 17 15 13 12 10 8 7 6 4 2 -1 -4 -7 -11 -16 -19 -22 -23 -23 -20 -17 -15 -14 -15 -17 -19 -21 -23 -22 -16 -10 -5 -4 -5 -7 -8 -8 -9 -10 -10 -9 -9 -10 -13 -16 -18 -17 -14 -8 -5 -5 -8 -10 -12 -11 -10 -10 -11 -13 -14 -16 -15 -9 1 8 8 3 -2 -8 -10 -6 4 14 20 21 19 16 13 10 8 5 2 -1 -2 -2 -2 -4 -6 -10 -14 -17 -18 -16 -12 -6 -3 -4 -7 -12 -17 -18 -14 -8 -3 -2 -7 -12 -16 -18 -18 -16 -16 -19 -23 -27 -31 -33 -32 -30 -25 -22 -21 -20 -19 -17 -14 -14 -16 -18 -19 -19 -20 -21 -22 -21 -19 -17 -17 -20 -24 -32 -36 -36 -35 -33 -31 -29 -28 -28 -30 -34 -34 -31 -28 -30 -33 -34 -31 -24 -14 -9 -7 -11 -17 -20 -17 -18 -21 -23 -23 -26 -28 -28 -28 -26 -23 -21 -20 -21 -23 -23 -17 -14 -13 -10 -20 -21 -21 -20 -20 -21 -22 -22 -22 -23 -23 -24 -26 -28 -28 -28 -29 -32 -30 -28 -27 -28 -29 -29 -28 -28 -28 -27 -25 -23 -22 -22 -21 -19 -18 -19 -19 -20 -21 -23 -24 -25 -24 -22 -21 -20 -19 -18 -17 -17 -18 -18 -16 -15 -14 -14 -13 -13 -14 -14 -14 -14 -15 -16 -15 -15 -15 -15 -15 -15 -15 -15 -15 -16 -17 -17 -18 -18 -19 -18 -17 -16 -14 -14 -16 -18 -20 -22 -23 -22 -21 -21 -22 -24 -23 -21 -20 -17 -15 -11 -7 -3 1 3 5 7 7 8 8 9 9 9 8 5 4 3 2 1 -0 -1 -2 -3 -5 -6 -7 -9 -10 -10 -8 -8 -5 -3 -0 3 4 7 9 10 8 4 -1 -7 -13 -18 -20 -22 -23 -23 -22 -18 -15 -14 -15 -16 -18 -16 -12 -7 -3 -0 -0 0 0 -1 -4 -6 -7 -8 -9 -10 -12 -15 -17 -19 -20 -21 -21 -22 -22 -23 -24 -25 -25 -25 -23 -19 -11 -2 7 15 21 28 35 39 42 39 34 28 22 13 -1 -11 -14 -14 -17 -21 -23 -23 -20 -13 -5 2 8 10 8 2 -4 -7 -6 0 10 18 22 23 23 22 20 19 18 16 15 13 11 9 8 7 5 3 1 -2 -6 -10 -14 -18 -21 -23 -22 -19 -17 -15 -14 -15 -17 -19 -22 -23 -21 -15 -8 -3 -3 -5 -7 -8 -9 -10 -11 -10 -10 -9 -9 -12 -15 -18 -17 -14 -9 -6 -6 -8 -11 -11 -11 -10 -10 -12 -13 -15 -17 -15 -9 2 6 6 2 -4 -9 -11 -8 -1 10 17 18 17 15 13 11 9 5 2 -1 -3 -4 -5 -7 -11 -15 -17 -18 -17 -15 -10 -5 -3 -3 -8 -14 -18 -18 -15 -9 -5 -8 -12 -17 -21 -22 -21 -20 -20 -22 -25 -29 -34 -36 -34 -29 -25 -23 -21 -20 -19 -16 -15 -15 -16 -18 -18 -18 -19 -21 -22 -21 -19 -18 -19 -22 -27 -31 -32 -32 -33 -32 -31 -29 -28 -29 -31 -32 -31 -29 -29 -32 -33 -30 -22 -15 -12 -11 -14 -19 -21 -21 -21 -22 -24 -25 -29 -31 -32 -31 -30 -26 -22 -21 -21 -22 -18 -12 -9 -9 -10 -21 -21 -20 -19 -18 -18 -18 -19 -19 -19 -19 -20 -22 -24 -24 -23 -24 -25 -25 -24 -24 -25 -26 -27 -27 -28 -29 -28 -24 -22 -22 -22 -21 -19 -19 -20 -21 -21 -22 -23 -24 -25 -26 -25 -24 -23 -22 -22 -22 -22 -22 -21 -20 -18 -17 -16 -15 -14 -13 -12 -11 -11 -11 -12 -12 -12 -12 -13 -13 -15 -16 -16 -15 -15 -15 -15 -15 -16 -18 -19 -19 -18 -17 -15 -15 -17 -19 -20 -21 -20 -19 -18 -18 -20 -20 -20 -20 -19 -19 -17 -15 -12 -9 -7 -5 -3 -2 -1 0 4 7 8 8 5 4 3 4 4 4 4 2 1 -1 -3 -5 -7 -9 -10 -10 -11 -10 -9 -8 -5 -3 0 4 8 10 9 6 1 -5 -10 -14 -18 -21 -24 -26 -24 -20 -16 -14 -14 -16 -17 -17 -15 -12 -5 -2 2 4 3 0 -3 -6 -8 -9 -10 -11 -12 -14 -17 -20 -21 -22 -23 -23 -23 -24 -26 -28 -30 -31 -31 -31 -28 -22 -12 -3 4 8 9 10 7 4 -1 -7 -14 -21 -22 -19 -17 -17 -18 -20 -21 -22 -22 -19 -14 -8 -2 3 3 -1 -6 -11 -12 -6 4 14 20 23 22 21 20 19 18 17 16 14 12 10 9 8 6 4 2 -1 -4 -8 -12 -17 -20 -21 -21 -19 -16 -15 -14 -15 -17 -19 -22 -23 -20 -13 -6 -2 -3 -5 -7 -9 -10 -11 -12 -11 -10 -8 -9 -12 -15 -17 -18 -14 -10 -7 -7 -9 -11 -11 -11 -11 -11 -13 -15 -17 -18 -16 -7 1 4 2 -1 -6 -10 -12 -11 -5 5 12 16 17 16 14 12 9 5 1 -3 -6 -8 -10 -12 -15 -16 -17 -17 -16 -13 -9 -4 -2 -4 -9 -15 -19 -20 -17 -12 -13 -16 -22 -26 -29 -28 -25 -21 -20 -23 -28 -33 -36 -36 -32 -28 -24 -22 -21 -20 -18 -16 -15 -15 -16 -17 -17 -18 -20 -22 -22 -21 -20 -21 -21 -24 -26 -27 -29 -31 -32 -31 -29 -26 -26 -27 -28 -29 -29 -29 -30 -31 -29 -23 -21 -19 -17 -17 -19 -20 -20 -21 -21 -22 -24 -27 -31 -33 -33 -33 -30 -26 -22 -20 -17 -13 -9 -8 -8 -9 -19 -19 -18 -17 -15 -14 -15 -17 -17 -17 -17 -17 -19 -19 -19 -20 -21 -22 -21 -20 -20 -21 -23 -24 -25 -26 -27 -26 -23 -21 -20 -20 -18 -18 -19 -22 -23 -24 -24 -23 -22 -22 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -23 -21 -20 -19 -17 -15 -15 -14 -13 -12 -10 -10 -10 -11 -12 -13 -15 -17 -18 -16 -14 -14 -14 -13 -14 -15 -17 -18 -19 -19 -18 -17 -17 -18 -19 -21 -20 -19 -18 -16 -16 -16 -16 -16 -15 -15 -14 -14 -14 -12 -11 -11 -10 -9 -8 -6 -4 -2 1 2 2 2 2 3 5 5 6 5 4 3 1 -1 -3 -5 -7 -9 -10 -11 -11 -12 -12 -11 -9 -5 -1 4 7 7 5 2 -1 -5 -11 -17 -22 -26 -27 -25 -21 -17 -15 -14 -16 -18 -19 -19 -14 -8 -2 2 4 3 0 -4 -8 -12 -13 -12 -11 -12 -14 -17 -20 -23 -24 -24 -24 -24 -24 -26 -28 -31 -34 -36 -39 -38 -30 -21 -16 -15 -16 -16 -16 -17 -20 -25 -30 -33 -33 -30 -26 -22 -20 -18 -19 -22 -25 -26 -24 -20 -15 -9 -5 -3 -6 -10 -15 -15 -10 -2 8 16 21 22 21 20 19 18 17 16 14 12 11 9 8 7 5 3 0 -3 -7 -11 -15 -18 -20 -20 -18 -16 -15 -15 -15 -17 -20 -22 -22 -19 -12 -4 -1 -2 -4 -7 -9 -10 -12 -13 -12 -10 -8 -9 -11 -15 -18 -17 -14 -10 -8 -8 -10 -11 -12 -12 -12 -14 -15 -17 -19 -20 -15 -7 -2 -2 -4 -7 -10 -13 -15 -15 -9 -0 7 13 16 16 14 12 8 2 -3 -8 -11 -12 -13 -14 -16 -16 -17 -16 -15 -11 -6 -2 -1 -5 -11 -17 -21 -24 -20 -19 -20 -24 -28 -32 -32 -29 -24 -21 -22 -26 -30 -33 -35 -33 -29 -26 -23 -22 -20 -19 -18 -16 -14 -14 -14 -15 -16 -18 -21 -23 -23 -22 -22 -22 -23 -24 -25 -27 -30 -31 -31 -29 -26 -23 -23 -24 -26 -28 -28 -28 -30 -30 -26 -26 -25 -24 -22 -21 -20 -20 -20 -20 -21 -22 -25 -29 -33 -35 -36 -33 -29 -24 -17 -12 -11 -10 -9 -8 -9 -16 -17 -17 -15 -13 -12 -12 -15 -16 -15 -15 -16 -16 -16 -17 -18 -20 -20 -20 -20 -20 -20 -21 -22 -23 -22 -21 -20 -19 -18 -18 -18 -17 -17 -18 -19 -20 -21 -22 -22 -20 -19 -20 -22 -23 -23 -23 -23 -23 -24 -24 -23 -22 -21 -20 -20 -19 -19 -18 -18 -17 -16 -14 -12 -11 -11 -11 -12 -13 -14 -14 -14 -13 -12 -11 -11 -11 -11 -12 -14 -16 -17 -17 -18 -18 -18 -18 -18 -21 -21 -21 -19 -17 -14 -14 -13 -13 -12 -11 -11 -12 -12 -11 -10 -9 -10 -10 -10 -10 -9 -8 -7 -6 -4 -3 -1 1 3 5 6 6 6 6 5 3 1 -1 -3 -4 -6 -7 -9 -11 -13 -16 -16 -15 -12 -7 -2 2 3 4 3 0 -5 -10 -16 -21 -24 -26 -25 -23 -20 -17 -15 -17 -19 -21 -20 -16 -10 -3 1 4 3 -1 -6 -10 -12 -12 -12 -12 -13 -15 -17 -20 -23 -25 -25 -25 -25 -25 -26 -27 -28 -31 -34 -35 -26 -16 -12 -12 -14 -14 -15 -17 -18 -21 -27 -33 -37 -37 -35 -32 -26 -24 -23 -24 -26 -27 -26 -25 -23 -19 -14 -11 -10 -12 -16 -18 -19 -15 -8 1 11 17 20 21 20 19 18 17 16 14 13 11 10 8 7 5 4 1 -2 -6 -10 -14 -17 -19 -19 -17 -16 -15 -15 -16 -18 -20 -22 -22 -19 -10 -3 -0 -1 -4 -7 -9 -11 -13 -14 -13 -10 -8 -8 -11 -15 -17 -16 -14 -10 -9 -10 -12 -13 -14 -14 -15 -17 -18 -20 -21 -19 -14 -9 -6 -7 -8 -10 -12 -14 -16 -15 -11 -5 3 10 13 13 12 9 3 -4 -9 -11 -12 -13 -14 -15 -17 -17 -16 -15 -11 -7 -3 0 -2 -7 -13 -20 -26 -24 -22 -21 -22 -26 -30 -32 -32 -28 -24 -23 -24 -26 -28 -31 -32 -30 -28 -25 -23 -22 -21 -20 -19 -16 -14 -12 -12 -14 -16 -20 -22 -24 -24 -25 -25 -25 -25 -25 -26 -28 -30 -29 -28 -25 -22 -20 -21 -23 -25 -27 -27 -28 -30 -30 -30 -29 -29 -27 -24 -21 -20 -19 -19 -20 -21 -23 -27 -32 -36 -37 -36 -32 -25 -14 -11 -11 -10 -9 -9 -9 -14 -14 -14 -13 -11 -10 -11 -14 -15 -14 -14 -14 -15 -15 -16 -17 -18 -18 -21 -22 -21 -20 -21 -22 -21 -18 -15 -13 -14 -14 -15 -16 -16 -16 -16 -17 -17 -17 -18 -18 -18 -18 -19 -19 -19 -19 -20 -21 -20 -19 -18 -18 -17 -17 -16 -16 -17 -17 -17 -17 -16 -16 -14 -13 -12 -12 -11 -11 -11 -13 -13 -13 -12 -11 -11 -11 -11 -11 -11 -12 -13 -14 -15 -16 -16 -16 -16 -16 -18 -20 -21 -21 -19 -16 -14 -12 -10 -9 -8 -8 -8 -8 -9 -8 -9 -9 -10 -10 -10 -10 -10 -10 -10 -9 -8 -7 -4 -2 1 4 5 6 7 8 7 5 3 1 0 -1 -2 -5 -8 -11 -14 -17 -19 -20 -19 -14 -8 -4 -1 1 1 -0 -2 -7 -13 -20 -23 -26 -26 -25 -22 -18 -16 -16 -18 -19 -18 -15 -10 -4 1 2 1 -1 -4 -7 -9 -11 -12 -13 -14 -14 -16 -19 -22 -24 -25 -26 -26 -25 -24 -24 -25 -26 -26 -20 -11 -7 -7 -9 -11 -13 -15 -17 -19 -22 -28 -34 -37 -37 -34 -29 -28 -27 -27 -26 -26 -26 -26 -26 -24 -21 -18 -16 -15 -18 -21 -23 -23 -20 -15 -5 5 13 19 21 20 18 17 16 15 14 13 11 9 8 7 6 4 2 -1 -5 -9 -13 -16 -18 -18 -17 -15 -15 -15 -17 -18 -20 -22 -22 -18 -10 -3 0 -1 -4 -6 -9 -11 -14 -15 -13 -10 -8 -8 -12 -15 -17 -16 -13 -11 -12 -13 -15 -17 -18 -19 -20 -21 -22 -22 -22 -18 -12 -7 -7 -8 -9 -10 -11 -13 -15 -15 -13 -7 -0 5 8 10 10 7 2 -3 -7 -10 -11 -13 -14 -15 -17 -16 -15 -13 -8 -4 -0 -0 -3 -9 -17 -25 -28 -26 -23 -21 -22 -27 -31 -33 -32 -28 -25 -22 -22 -24 -28 -31 -32 -31 -29 -26 -24 -23 -22 -21 -19 -15 -12 -10 -11 -13 -16 -20 -23 -26 -27 -28 -28 -29 -28 -27 -27 -28 -28 -27 -25 -22 -20 -20 -21 -24 -26 -26 -27 -30 -32 -29 -29 -30 -30 -27 -23 -20 -19 -19 -20 -20 -21 -24 -28 -34 -37 -37 -34 -27 -16 -13 -13 -11 -10 -9 -9 -13 -13 -13 -12 -10 -10 -11 -14 -15 -14 -12 -12 -14 -14 -14 -15 -17 -17 -20 -21 -21 -20 -20 -18 -16 -14 -12 -11 -11 -12 -13 -13 -14 -14 -14 -14 -14 -14 -14 -15 -15 -15 -14 -13 -14 -15 -16 -16 -15 -15 -14 -14 -14 -13 -13 -14 -14 -14 -14 -14 -14 -13 -13 -13 -12 -11 -10 -9 -9 -11 -12 -12 -11 -11 -11 -11 -11 -11 -10 -10 -11 -11 -12 -13 -14 -14 -14 -14 -14 -16 -18 -20 -20 -17 -15 -12 -10 -8 -6 -5 -4 -5 -5 -5 -7 -8 -9 -9 -10 -10 -10 -10 -10 -11 -10 -10 -8 -6 -4 -1 1 3 6 7 8 7 6 4 5 4 3 -0 -3 -7 -10 -13 -17 -20 -22 -22 -19 -16 -12 -9 -4 -1 -0 -2 -5 -10 -12 -16 -19 -22 -24 -22 -19 -16 -14 -16 -17 -17 -15 -11 -5 -1 2 3 1 -2 -5 -7 -9 -11 -12 -12 -13 -15 -17 -20 -24 -27 -28 -27 -25 -24 -24 -24 -23 -17 -10 -5 -2 -3 -4 -7 -10 -13 -15 -18 -24 -31 -37 -40 -39 -36 -32 -29 -28 -27 -27 -26 -25 -26 -26 -25 -22 -20 -19 -20 -21 -23 -25 -26 -25 -20 -12 -2 9 16 19 19 17 15 14 14 13 12 11 9 8 7 6 5 3 -0 -4 -8 -12 -15 -16 -16 -16 -15 -15 -16 -17 -19 -21 -23 -22 -17 -10 -3 1 -1 -3 -6 -9 -12 -14 -15 -14 -11 -8 -9 -13 -16 -17 -16 -14 -14 -15 -17 -17 -18 -18 -19 -21 -22 -23 -23 -21 -17 -12 -10 -10 -11 -10 -10 -10 -13 -15 -16 -14 -9 -1 8 17 20 18 13 9 4 -2 -7 -9 -11 -12 -14 -15 -16 -15 -11 -6 -2 -0 -2 -7 -15 -24 -29 -30 -27 -22 -21 -24 -28 -32 -33 -31 -27 -24 -21 -21 -25 -30 -34 -35 -32 -29 -27 -26 -25 -24 -22 -18 -13 -9 -9 -10 -13 -18 -22 -26 -28 -29 -30 -31 -30 -28 -27 -28 -28 -28 -26 -23 -20 -18 -21 -24 -26 -26 -26 -29 -31 -28 -27 -30 -33 -30 -26 -21 -19 -19 -20 -20 -21 -23 -27 -33 -38 -38 -36 -29 -21 -19 -16 -13 -12 -10 -10 -15 -15 -14 -13 -11 -12 -13 -16 -18 -17 -16 -15 -16 -14 -12 -12 -16 -20 -19 -20 -20 -20 -19 -18 -17 -16 -16 -15 -14 -14 -14 -14 -14 -14 -13 -13 -13 -13 -13 -13 -14 -14 -12 -11 -11 -12 -12 -11 -11 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -11 -11 -12 -12 -12 -10 -8 -7 -6 -8 -10 -11 -11 -10 -11 -11 -10 -10 -10 -10 -9 -10 -10 -11 -12 -12 -12 -12 -11 -13 -14 -16 -17 -16 -14 -12 -10 -8 -6 -4 -3 -3 -3 -2 -4 -5 -6 -8 -8 -9 -9 -9 -9 -10 -10 -10 -10 -9 -8 -6 -3 -1 1 4 6 7 8 8 8 8 7 6 3 -0 -3 -7 -12 -16 -20 -23 -24 -24 -22 -19 -13 -9 -5 -2 -0 -2 -3 -8 -16 -23 -27 -27 -24 -20 -17 -16 -16 -16 -15 -13 -10 -5 -1 2 4 3 0 -2 -4 -6 -8 -10 -11 -12 -14 -16 -21 -25 -28 -29 -27 -25 -25 -25 -24 -19 -13 -8 -5 -3 -1 -1 -4 -7 -11 -14 -19 -25 -31 -37 -39 -39 -37 -35 -31 -28 -27 -26 -26 -25 -25 -26 -25 -24 -22 -19 -19 -21 -24 -26 -29 -28 -25 -18 -7 4 11 15 17 15 14 13 13 13 12 10 8 7 6 5 5 3 -0 -4 -7 -11 -13 -15 -16 -16 -15 -15 -17 -18 -20 -21 -23 -21 -17 -10 -2 -0 -1 -4 -6 -10 -13 -15 -16 -14 -11 -9 -11 -14 -16 -17 -16 -16 -16 -17 -17 -18 -18 -19 -20 -22 -24 -24 -24 -21 -16 -11 -10 -10 -10 -10 -10 -11 -13 -15 -17 -13 -8 2 13 22 22 19 14 9 4 2 0 -2 -5 -10 -14 -16 -16 -14 -9 -4 -2 -3 -7 -13 -20 -26 -30 -29 -25 -23 -23 -26 -30 -32 -33 -30 -26 -22 -19 -23 -30 -35 -38 -36 -34 -32 -30 -28 -27 -25 -22 -16 -10 -7 -8 -11 -14 -19 -24 -28 -30 -32 -34 -33 -30 -28 -27 -29 -31 -28 -23 -19 -17 -20 -24 -25 -25 -25 -28 -29 -27 -27 -30 -33 -33 -29 -24 -20 -19 -21 -21 -22 -23 -26 -31 -36 -39 -39 -34 -28 -24 -20 -16 -15 -12 -10 -18 -18 -16 -15 -14 -15 -17 -20 -21 -21 -21 -22 -23 -23 -19 -16 -17 -21 -21 -21 -21 -21 -20 -19 -19 -20 -19 -19 -20 -19 -18 -17 -17 -16 -15 -14 -15 -15 -14 -14 -14 -14 -13 -12 -12 -12 -12 -11 -10 -10 -11 -13 -14 -13 -13 -13 -13 -13 -12 -11 -10 -11 -12 -13 -13 -10 -7 -5 -5 -6 -7 -8 -9 -10 -9 -8 -8 -8 -9 -9 -9 -9 -8 -9 -9 -10 -10 -10 -10 -10 -10 -11 -13 -13 -12 -11 -9 -8 -6 -4 -3 -2 -2 -1 -1 -2 -2 -4 -6 -7 -8 -9 -9 -9 -9 -9 -9 -9 -9 -8 -7 -6 -3 -1 2 5 7 9 10 10 10 10 8 6 3 -1 -5 -10 -14 -18 -21 -23 -26 -26 -22 -17 -12 -6 -2 -1 -1 -4 -11 -18 -24 -25 -24 -22 -20 -18 -15 -14 -14 -14 -13 -11 -7 -2 2 4 4 3 1 -1 -3 -6 -7 -8 -10 -12 -15 -19 -23 -26 -26 -27 -27 -27 -27 -23 -20 -17 -15 -12 -6 -1 1 -1 -5 -9 -14 -20 -27 -33 -37 -38 -37 -35 -31 -28 -28 -28 -27 -25 -24 -25 -25 -25 -23 -21 -20 -19 -20 -23 -27 -30 -31 -29 -23 -13 -3 6 12 13 12 11 11 12 12 11 9 7 6 5 5 4 2 -0 -3 -7 -10 -12 -14 -15 -16 -16 -16 -17 -19 -20 -22 -23 -21 -17 -9 -4 -1 -2 -4 -7 -10 -13 -15 -16 -15 -12 -12 -14 -16 -18 -17 -16 -15 -16 -17 -18 -19 -19 -20 -21 -23 -24 -25 -24 -20 -14 -11 -10 -11 -11 -11 -11 -12 -13 -15 -15 -14 -9 1 13 20 21 18 12 7 3 1 -1 -3 -6 -10 -13 -15 -15 -12 -7 -4 -4 -6 -10 -16 -23 -28 -30 -27 -24 -23 -24 -27 -30 -32 -32 -29 -24 -20 -23 -29 -34 -37 -38 -38 -37 -35 -32 -30 -28 -26 -22 -16 -10 -8 -8 -10 -15 -21 -27 -31 -34 -36 -35 -31 -28 -27 -29 -30 -28 -23 -18 -15 -17 -21 -24 -24 -25 -27 -29 -28 -28 -29 -31 -33 -31 -27 -22 -21 -22 -22 -22 -22 -24 -28 -32 -37 -41 -38 -32 -27 -23 -19 -19 -14 -11 -19 -18 -17 -16 -15 -15 -17 -19 -21 -21 -22 -22 -23 -24 -23 -21 -20 -20 -20 -21 -22 -22 -20 -18 -18 -18 -19 -21 -23 -25 -24 -21 -19 -19 -17 -17 -17 -17 -17 -16 -16 -15 -15 -15 -15 -15 -15 -14 -12 -12 -13 -14 -15 -15 -14 -14 -14 -14 -13 -13 -12 -13 -14 -15 -13 -10 -8 -6 -6 -6 -7 -8 -9 -8 -7 -6 -6 -7 -8 -8 -8 -8 -7 -7 -8 -9 -10 -10 -10 -9 -8 -9 -10 -11 -10 -8 -6 -5 -4 -3 -3 -2 -2 -2 -1 -1 -0 -1 -2 -4 -5 -7 -7 -8 -7 -7 -8 -8 -8 -9 -8 -8 -7 -5 -3 0 3 5 8 9 10 10 11 10 9 6 2 -3 -6 -10 -13 -18 -24 -28 -27 -24 -20 -14 -9 -6 -4 -5 -9 -15 -19 -20 -21 -21 -21 -19 -16 -14 -14 -14 -15 -15 -13 -10 -5 0 4 5 5 4 2 0 -2 -4 -5 -7 -9 -12 -16 -19 -23 -26 -27 -28 -28 -27 -26 -26 -25 -24 -18 -8 -0 2 1 -3 -8 -16 -24 -30 -35 -36 -36 -35 -32 -30 -30 -29 -27 -24 -22 -22 -23 -25 -25 -23 -21 -19 -18 -19 -22 -26 -30 -32 -32 -27 -19 -10 -1 4 5 4 4 6 9 10 9 8 6 4 4 3 3 2 -0 -3 -6 -9 -12 -14 -16 -16 -17 -17 -19 -20 -21 -22 -23 -22 -17 -10 -5 -3 -3 -5 -9 -12 -15 -17 -18 -16 -15 -14 -15 -16 -16 -16 -15 -14 -15 -17 -18 -19 -19 -19 -21 -23 -25 -27 -25 -18 -13 -11 -12 -12 -13 -13 -13 -13 -13 -15 -16 -15 -11 -0 12 19 20 17 10 5 1 -1 -2 -4 -7 -10 -13 -14 -13 -9 -6 -3 -3 -6 -12 -19 -26 -29 -28 -25 -23 -22 -24 -28 -31 -32 -31 -27 -23 -23 -26 -30 -34 -38 -41 -42 -40 -36 -32 -30 -28 -26 -22 -17 -12 -9 -9 -12 -18 -25 -30 -35 -37 -36 -32 -29 -28 -28 -28 -26 -23 -18 -15 -16 -19 -21 -23 -24 -27 -29 -29 -29 -30 -32 -34 -33 -30 -26 -23 -23 -23 -22 -22 -23 -26 -30 -35 -42 -41 -35 -29 -24 -21 -20 -16 -13 -18 -17 -16 -15 -14 -14 -15 -17 -18 -18 -19 -19 -19 -20 -20 -19 -18 -17 -17 -17 -17 -17 -15 -13 -12 -13 -15 -18 -23 -26 -27 -25 -22 -22 -20 -19 -18 -18 -18 -18 -18 -18 -19 -19 -18 -18 -19 -18 -14 -13 -13 -15 -16 -16 -15 -14 -14 -13 -14 -15 -15 -15 -15 -14 -13 -11 -11 -10 -11 -11 -9 -8 -7 -6 -5 -4 -4 -5 -7 -8 -8 -7 -6 -6 -6 -7 -8 -10 -10 -9 -9 -9 -9 -10 -9 -7 -5 -3 -1 -1 -0 -0 -1 -1 -1 -1 -1 0 -0 -1 -2 -3 -4 -5 -5 -5 -5 -6 -6 -7 -7 -7 -7 -6 -5 -3 -1 -0 2 4 5 7 9 12 13 11 8 4 1 -2 -6 -12 -19 -25 -27 -27 -25 -22 -18 -15 -11 -10 -10 -13 -14 -15 -17 -19 -20 -19 -17 -15 -14 -13 -15 -17 -17 -16 -13 -7 -1 3 5 5 5 6 5 3 0 -2 -4 -6 -9 -12 -16 -19 -20 -22 -25 -28 -30 -31 -31 -28 -25 -17 -8 -0 3 1 -3 -10 -19 -26 -31 -32 -33 -33 -32 -31 -30 -28 -26 -23 -21 -21 -23 -24 -25 -24 -23 -21 -19 -18 -19 -21 -25 -28 -30 -30 -29 -24 -17 -11 -7 -5 -4 -2 1 4 5 6 6 4 3 2 2 2 1 -1 -3 -6 -8 -12 -15 -16 -18 -18 -19 -20 -21 -22 -23 -23 -21 -17 -11 -6 -5 -6 -8 -12 -15 -18 -19 -18 -16 -15 -14 -15 -16 -16 -15 -13 -13 -15 -16 -18 -19 -18 -19 -21 -24 -26 -27 -22 -17 -13 -12 -13 -14 -15 -15 -15 -13 -13 -14 -15 -17 -13 -2 9 17 19 14 8 1 -3 -4 -5 -6 -8 -11 -13 -13 -11 -8 -4 -2 -4 -8 -15 -22 -27 -27 -26 -25 -23 -23 -25 -28 -30 -30 -28 -24 -20 -21 -25 -32 -39 -43 -44 -43 -39 -34 -31 -29 -27 -25 -22 -17 -12 -9 -10 -14 -21 -28 -33 -37 -36 -34 -31 -29 -27 -26 -24 -22 -19 -16 -15 -17 -20 -23 -25 -27 -30 -32 -32 -32 -33 -35 -35 -33 -29 -26 -24 -23 -22 -22 -23 -25 -30 -35 -42 -42 -38 -33 -27 -21 -20 -18 -17 -17 -16 -15 -14 -13 -14 -15 -16 -17 -17 -18 -18 -18 -18 -19 -18 -16 -15 -15 -13 -11 -9 -8 -7 -7 -8 -11 -16 -20 -24 -26 -26 -25 -23 -21 -19 -19 -19 -18 -18 -19 -21 -25 -26 -23 -19 -17 -15 -12 -11 -11 -11 -12 -12 -12 -11 -10 -10 -11 -12 -12 -12 -12 -12 -11 -12 -13 -13 -14 -14 -13 -12 -9 -8 -7 -6 -6 -7 -8 -9 -9 -8 -7 -7 -7 -8 -9 -10 -11 -11 -11 -11 -11 -12 -11 -10 -7 -3 -1 -0 1 2 1 2 1 0 -0 0 1 1 1 1 1 1 0 -0 -1 -2 -2 -3 -4 -4 -4 -4 -4 -3 -3 -4 -3 -2 -1 0 3 6 9 10 10 9 8 7 3 -4 -12 -19 -23 -25 -25 -24 -24 -23 -21 -17 -13 -12 -11 -11 -13 -15 -17 -18 -17 -16 -15 -14 -15 -17 -18 -19 -19 -15 -9 -4 1 4 7 9 9 8 6 3 0 -1 -4 -8 -13 -14 -14 -16 -21 -26 -30 -31 -31 -30 -27 -21 -13 -7 -2 -1 -3 -8 -14 -21 -24 -26 -27 -29 -30 -30 -29 -27 -25 -24 -22 -22 -22 -23 -24 -24 -23 -22 -21 -19 -18 -18 -20 -22 -25 -27 -29 -29 -26 -21 -14 -10 -7 -7 -7 -4 -2 -1 0 0 0 0 -1 -1 -1 -2 -3 -4 -6 -9 -13 -16 -18 -19 -20 -21 -22 -23 -24 -24 -24 -21 -17 -12 -9 -9 -10 -12 -14 -16 -18 -18 -17 -16 -15 -15 -16 -16 -16 -14 -13 -13 -15 -18 -20 -20 -19 -19 -20 -23 -25 -23 -19 -15 -13 -14 -15 -16 -17 -16 -15 -14 -14 -14 -16 -18 -14 -4 7 16 15 10 3 -3 -6 -7 -7 -8 -10 -12 -13 -12 -10 -7 -4 -4 -7 -12 -18 -22 -24 -25 -25 -24 -22 -23 -25 -28 -29 -27 -24 -21 -22 -27 -35 -42 -45 -46 -45 -42 -37 -33 -31 -29 -27 -25 -22 -17 -13 -11 -12 -17 -24 -31 -37 -38 -36 -33 -29 -26 -24 -23 -22 -20 -17 -16 -18 -20 -22 -24 -27 -31 -34 -36 -36 -35 -37 -37 -36 -33 -29 -26 -24 -23 -23 -22 -24 -29 -35 -40 -42 -40 -36 -31 -25 -23 -23 -22 -17 -16 -16 -15 -14 -15 -17 -18 -18 -18 -19 -21 -23 -24 -23 -22 -19 -16 -14 -12 -10 -8 -7 -6 -6 -8 -12 -17 -19 -22 -23 -22 -21 -21 -20 -20 -19 -19 -19 -19 -17 -16 -15 -16 -17 -16 -15 -12 -9 -7 -6 -6 -6 -5 -4 -3 -3 -3 -5 -6 -7 -8 -9 -9 -9 -11 -12 -12 -11 -11 -11 -10 -8 -8 -8 -8 -9 -9 -9 -10 -10 -10 -9 -10 -9 -9 -10 -11 -11 -11 -11 -12 -12 -12 -13 -12 -9 -6 -4 -3 -2 -0 0 1 2 2 1 1 2 3 4 5 6 7 7 7 6 6 5 4 3 2 1 0 0 0 -0 -2 -4 -6 -7 -7 -6 -3 -0 3 6 8 11 13 11 7 -0 -9 -16 -20 -21 -22 -24 -27 -28 -26 -22 -17 -13 -10 -10 -11 -13 -15 -17 -17 -17 -16 -15 -16 -17 -18 -19 -19 -16 -12 -7 -2 1 4 7 9 10 7 5 3 0 -5 -10 -12 -12 -14 -19 -24 -26 -28 -29 -29 -27 -22 -17 -13 -10 -9 -9 -11 -14 -15 -16 -18 -21 -24 -27 -28 -27 -26 -26 -25 -25 -23 -22 -22 -23 -23 -24 -23 -22 -21 -19 -17 -16 -17 -19 -22 -24 -27 -28 -28 -25 -19 -13 -9 -7 -7 -9 -9 -8 -6 -4 -4 -5 -6 -7 -7 -7 -8 -7 -8 -12 -16 -19 -21 -22 -23 -25 -26 -27 -26 -25 -25 -22 -18 -16 -14 -13 -12 -13 -14 -15 -17 -17 -17 -15 -15 -15 -16 -16 -16 -14 -13 -14 -17 -20 -20 -18 -18 -18 -20 -22 -22 -20 -17 -15 -15 -15 -17 -18 -18 -18 -18 -17 -15 -16 -17 -18 -15 -7 4 10 10 5 -2 -7 -8 -9 -10 -13 -15 -15 -15 -12 -9 -6 -7 -9 -12 -15 -18 -21 -23 -24 -23 -22 -21 -22 -24 -26 -26 -26 -25 -25 -28 -33 -39 -44 -46 -46 -44 -40 -36 -33 -30 -28 -26 -25 -22 -17 -14 -13 -15 -21 -30 -38 -41 -39 -35 -30 -26 -24 -23 -22 -21 -18 -17 -17 -19 -21 -24 -28 -31 -35 -39 -39 -39 -39 -40 -40 -36 -33 -29 -25 -23 -23 -22 -23 -26 -32 -38 -41 -41 -39 -35 -30 -29 -28 -28 -18 -18 -17 -17 -17 -17 -18 -19 -21 -21 -23 -26 -30 -32 -30 -27 -24 -21 -16 -15 -14 -14 -14 -13 -13 -14 -16 -19 -17 -17 -17 -18 -19 -20 -19 -19 -20 -20 -21 -22 -21 -18 -15 -12 -12 -13 -12 -11 -9 -6 -5 -4 -3 -2 -2 -0 0 -1 -3 -4 -5 -6 -6 -6 -7 -8 -10 -10 -9 -9 -8 -7 -6 -5 -6 -7 -7 -8 -9 -10 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -11 -11 -12 -12 -12 -10 -7 -6 -4 -3 -2 -1 -1 -0 0 0 2 3 5 7 9 11 12 13 13 13 12 11 10 8 6 4 4 4 4 3 1 -2 -6 -9 -10 -10 -9 -8 -5 -1 4 9 12 11 8 2 -5 -11 -15 -16 -19 -25 -30 -31 -29 -24 -19 -14 -11 -10 -10 -12 -14 -15 -16 -16 -16 -15 -15 -15 -16 -18 -18 -18 -15 -11 -8 -4 1 6 10 10 9 6 5 1 -4 -7 -9 -12 -16 -19 -21 -23 -24 -25 -24 -22 -21 -21 -21 -21 -20 -17 -13 -10 -9 -12 -15 -18 -21 -23 -23 -24 -25 -25 -26 -25 -23 -22 -21 -22 -22 -23 -23 -23 -22 -19 -17 -15 -14 -16 -18 -21 -24 -27 -28 -25 -20 -16 -14 -12 -11 -10 -10 -9 -8 -9 -9 -10 -11 -11 -11 -10 -9 -10 -13 -16 -19 -23 -26 -28 -30 -32 -33 -33 -31 -28 -25 -22 -18 -16 -14 -13 -13 -12 -13 -15 -16 -17 -16 -15 -15 -16 -17 -17 -16 -14 -14 -15 -17 -18 -18 -17 -17 -18 -20 -20 -20 -19 -17 -16 -16 -17 -18 -19 -19 -20 -19 -18 -17 -17 -18 -17 -14 -9 -0 5 4 -2 -7 -9 -10 -12 -14 -16 -17 -17 -15 -11 -7 -7 -7 -9 -11 -13 -16 -19 -21 -22 -21 -19 -19 -20 -23 -25 -27 -27 -27 -27 -31 -36 -42 -45 -47 -45 -42 -39 -35 -31 -28 -27 -26 -24 -22 -18 -16 -16 -20 -28 -36 -41 -41 -38 -33 -27 -24 -23 -23 -22 -20 -17 -16 -17 -19 -23 -27 -31 -35 -39 -41 -42 -42 -41 -42 -39 -36 -32 -27 -24 -23 -21 -21 -23 -28 -35 -39 -41 -39 -37 -34 -32 -31 -30 -19 -19 -19 -19 -19 -18 -18 -19 -22 -23 -25 -28 -31 -33 -30 -26 -23 -22 -22 -21 -21 -22 -25 -25 -23 -22 -22 -24 -24 -21 -18 -17 -16 -17 -17 -17 -17 -18 -19 -20 -17 -15 -14 -13 -12 -12 -12 -13 -12 -10 -8 -7 -6 -6 -6 -6 -6 -6 -7 -8 -9 -9 -9 -9 -9 -10 -11 -11 -11 -11 -9 -8 -5 -3 -3 -3 -3 -4 -6 -7 -9 -10 -11 -11 -10 -9 -9 -9 -9 -9 -8 -8 -8 -8 -9 -10 -11 -11 -9 -7 -6 -5 -4 -4 -4 -4 -4 -4 -2 -1 2 5 7 9 12 14 16 16 17 16 15 13 10 9 7 7 7 6 6 3 -0 -4 -8 -12 -13 -13 -12 -10 -7 -0 5 8 8 6 4 2 -1 -6 -12 -20 -26 -30 -31 -29 -25 -21 -16 -13 -10 -10 -10 -12 -13 -14 -14 -14 -13 -13 -13 -14 -15 -16 -16 -15 -13 -10 -6 -1 4 9 10 10 10 9 5 1 -2 -5 -9 -13 -15 -16 -18 -19 -19 -18 -17 -18 -20 -23 -25 -24 -20 -16 -13 -14 -15 -15 -16 -17 -19 -22 -25 -25 -25 -24 -22 -20 -20 -20 -21 -21 -22 -23 -23 -21 -18 -16 -13 -13 -14 -16 -19 -23 -27 -27 -24 -21 -17 -14 -12 -11 -11 -10 -9 -8 -8 -9 -10 -11 -10 -10 -9 -10 -12 -14 -16 -20 -24 -27 -30 -32 -33 -34 -33 -31 -28 -25 -21 -19 -17 -15 -13 -13 -13 -14 -15 -16 -16 -15 -15 -15 -17 -18 -18 -16 -15 -14 -15 -17 -17 -18 -17 -18 -18 -19 -19 -19 -19 -17 -17 -18 -18 -19 -20 -20 -20 -20 -19 -19 -19 -18 -17 -15 -9 -4 -1 -2 -7 -10 -11 -12 -13 -16 -18 -19 -19 -15 -11 -8 -6 -6 -7 -8 -11 -14 -18 -21 -20 -19 -17 -17 -19 -23 -26 -27 -27 -27 -29 -34 -40 -45 -47 -45 -43 -41 -38 -33 -29 -27 -26 -26 -24 -22 -20 -18 -18 -24 -33 -39 -42 -39 -33 -28 -25 -24 -25 -25 -22 -19 -17 -16 -18 -21 -25 -30 -35 -39 -43 -45 -44 -42 -43 -41 -37 -33 -28 -25 -23 -21 -21 -22 -26 -32 -37 -39 -38 -37 -34 -33 -31 -30 -19 -20 -20 -19 -19 -18 -18 -20 -22 -23 -24 -26 -27 -27 -26 -24 -23 -23 -24 -24 -23 -23 -24 -24 -24 -23 -23 -23 -23 -21 -19 -16 -15 -15 -14 -14 -13 -14 -15 -16 -16 -16 -17 -16 -14 -14 -15 -17 -17 -16 -14 -13 -13 -13 -13 -14 -15 -15 -15 -15 -16 -16 -16 -16 -16 -17 -17 -17 -18 -17 -15 -12 -9 -6 -4 -2 -1 -2 -2 -3 -4 -5 -7 -8 -7 -7 -6 -6 -7 -7 -6 -6 -5 -5 -5 -6 -7 -8 -8 -7 -5 -4 -4 -5 -6 -7 -8 -9 -8 -8 -5 -2 1 3 5 9 11 13 14 14 13 12 10 10 9 9 8 7 8 7 5 2 -2 -8 -10 -12 -14 -15 -14 -10 -6 -1 4 6 8 8 6 1 -7 -14 -20 -24 -27 -29 -28 -25 -23 -19 -15 -12 -10 -10 -10 -10 -10 -11 -12 -12 -13 -11 -11 -12 -13 -14 -15 -15 -14 -11 -6 2 8 12 14 13 10 7 6 4 -2 -6 -8 -9 -11 -13 -13 -13 -12 -12 -15 -20 -26 -29 -28 -24 -20 -18 -17 -17 -15 -14 -14 -16 -19 -22 -23 -23 -21 -20 -19 -19 -20 -21 -22 -23 -22 -21 -19 -17 -15 -13 -13 -13 -15 -19 -23 -26 -26 -25 -21 -18 -15 -14 -13 -14 -14 -13 -12 -12 -12 -12 -12 -11 -10 -8 -9 -10 -12 -15 -18 -22 -26 -29 -31 -33 -34 -33 -31 -28 -24 -21 -19 -17 -15 -14 -14 -14 -15 -16 -17 -16 -15 -15 -16 -18 -19 -19 -17 -15 -15 -15 -17 -18 -18 -18 -19 -18 -17 -18 -20 -19 -19 -19 -20 -21 -22 -22 -22 -22 -22 -22 -21 -20 -19 -18 -14 -11 -9 -9 -14 -15 -14 -13 -13 -15 -18 -21 -22 -20 -16 -12 -8 -6 -6 -7 -9 -12 -16 -20 -20 -19 -17 -16 -17 -20 -24 -27 -28 -27 -27 -31 -36 -43 -47 -48 -47 -44 -40 -35 -31 -29 -27 -27 -26 -25 -23 -21 -19 -22 -29 -36 -40 -39 -33 -29 -27 -27 -29 -29 -27 -24 -20 -17 -17 -18 -22 -27 -34 -39 -44 -46 -45 -42 -42 -41 -39 -35 -29 -25 -22 -21 -22 -23 -26 -30 -35 -37 -36 -34 -32 -30 -30 -29 -20 -19 -17 -16 -16 -16 -17 -18 -20 -20 -20 -21 -22 -22 -20 -19 -18 -19 -20 -20 -19 -18 -18 -18 -19 -19 -18 -19 -19 -19 -18 -17 -16 -16 -14 -13 -12 -13 -13 -13 -15 -17 -19 -19 -18 -17 -18 -19 -20 -20 -19 -18 -18 -18 -19 -20 -21 -21 -21 -21 -22 -22 -22 -22 -22 -22 -23 -23 -24 -23 -22 -20 -17 -14 -11 -8 -6 -4 -3 -2 -2 -2 -3 -4 -3 -4 -4 -4 -4 -4 -5 -5 -4 -3 -3 -2 -2 -3 -4 -4 -2 -1 -1 -3 -5 -8 -10 -12 -13 -14 -13 -11 -8 -7 -4 -1 2 4 5 5 5 4 4 6 6 7 7 5 6 6 6 5 2 -3 -7 -10 -13 -17 -19 -18 -15 -11 -5 -0 4 7 8 5 -1 -7 -11 -16 -20 -24 -25 -26 -25 -24 -21 -17 -14 -11 -9 -9 -9 -10 -11 -11 -12 -11 -11 -10 -9 -11 -12 -14 -16 -16 -14 -9 -3 4 9 10 7 6 7 8 4 1 -1 -1 -3 -6 -7 -7 -7 -6 -8 -13 -19 -25 -29 -30 -28 -25 -22 -19 -16 -14 -13 -14 -17 -19 -20 -20 -19 -19 -19 -19 -20 -21 -23 -23 -22 -20 -19 -17 -17 -15 -14 -13 -14 -16 -19 -23 -25 -26 -24 -21 -18 -16 -14 -13 -14 -15 -15 -14 -12 -13 -13 -12 -12 -9 -8 -8 -10 -12 -15 -18 -22 -25 -28 -32 -34 -34 -33 -31 -28 -24 -21 -19 -17 -16 -15 -15 -15 -16 -18 -18 -17 -16 -15 -17 -19 -20 -19 -17 -15 -15 -15 -17 -18 -19 -20 -19 -17 -16 -19 -19 -20 -22 -22 -23 -24 -25 -25 -25 -25 -25 -24 -23 -21 -20 -18 -15 -12 -10 -13 -15 -17 -16 -15 -16 -17 -19 -22 -22 -20 -16 -12 -8 -8 -8 -9 -10 -13 -15 -17 -17 -16 -15 -15 -19 -24 -27 -29 -27 -27 -29 -34 -41 -47 -51 -50 -48 -43 -37 -34 -31 -29 -27 -27 -26 -26 -25 -22 -22 -26 -32 -37 -38 -35 -31 -29 -29 -30 -31 -31 -30 -26 -20 -17 -17 -20 -26 -32 -39 -45 -47 -45 -42 -42 -43 -41 -37 -31 -25 -21 -20 -22 -24 -26 -29 -30 -29 -29 -27 -25 -26 -29 -29 -19 -17 -15 -14 -13 -13 -14 -15 -16 -17 -16 -16 -17 -17 -16 -16 -15 -15 -16 -15 -13 -12 -12 -12 -13 -13 -13 -13 -14 -15 -16 -17 -17 -17 -16 -15 -14 -15 -14 -13 -13 -15 -17 -19 -19 -18 -19 -19 -20 -20 -19 -18 -17 -18 -18 -19 -21 -22 -23 -23 -23 -23 -23 -21 -21 -22 -23 -25 -26 -26 -26 -25 -24 -22 -20 -17 -15 -12 -10 -8 -7 -6 -5 -4 -3 -3 -4 -4 -4 -5 -5 -6 -6 -5 -4 -3 -2 -1 0 1 3 4 4 2 -1 -4 -7 -10 -12 -15 -16 -16 -16 -14 -12 -11 -9 -7 -6 -6 -6 -6 -6 -4 -2 -0 0 -0 2 2 2 3 2 -1 -4 -7 -11 -15 -18 -19 -19 -18 -14 -9 -4 0 4 5 2 -1 -4 -7 -10 -14 -18 -21 -23 -24 -25 -23 -20 -16 -13 -11 -10 -10 -11 -11 -13 -13 -13 -12 -11 -11 -11 -12 -13 -14 -16 -16 -14 -9 -3 1 1 3 6 11 11 9 6 5 3 -0 -1 -1 -0 -1 -3 -7 -12 -19 -25 -30 -31 -30 -27 -23 -18 -15 -13 -14 -17 -18 -19 -20 -20 -20 -21 -21 -22 -22 -22 -22 -21 -19 -18 -16 -17 -16 -16 -15 -14 -15 -17 -20 -23 -25 -24 -23 -21 -19 -17 -15 -15 -15 -16 -16 -14 -14 -14 -14 -14 -12 -10 -9 -10 -12 -13 -15 -17 -20 -25 -29 -32 -34 -34 -34 -32 -28 -25 -21 -19 -18 -17 -16 -16 -17 -19 -21 -20 -18 -14 -15 -17 -19 -20 -19 -17 -15 -15 -16 -18 -20 -21 -22 -21 -18 -19 -19 -20 -24 -27 -27 -27 -28 -28 -28 -28 -28 -27 -26 -24 -22 -20 -18 -15 -11 -10 -12 -16 -20 -18 -16 -15 -15 -18 -21 -22 -20 -16 -11 -9 -9 -10 -11 -11 -11 -12 -13 -14 -15 -15 -18 -21 -25 -28 -29 -30 -30 -32 -38 -46 -51 -53 -51 -46 -41 -37 -33 -31 -28 -27 -27 -27 -27 -25 -23 -24 -28 -32 -36 -35 -32 -29 -30 -31 -32 -34 -33 -31 -24 -19 -17 -19 -25 -31 -39 -46 -48 -45 -43 -44 -44 -43 -39 -34 -27 -22 -20 -21 -25 -26 -26 -23 -19 -20 -19 -18 -21 -30 -31 -18 -16 -14 -11 -10 -10 -10 -11 -12 -13 -13 -13 -14 -14 -14 -15 -15 -15 -15 -14 -13 -11 -11 -11 -11 -11 -10 -9 -10 -12 -14 -16 -17 -19 -19 -18 -17 -16 -16 -17 -16 -16 -17 -17 -17 -17 -17 -17 -17 -17 -17 -16 -16 -15 -16 -17 -18 -19 -19 -20 -21 -21 -20 -17 -17 -18 -20 -22 -24 -25 -26 -25 -25 -25 -24 -23 -21 -20 -19 -17 -16 -15 -14 -12 -10 -10 -9 -9 -9 -9 -10 -11 -11 -9 -8 -7 -7 -6 -4 -1 2 5 7 7 5 1 -3 -6 -8 -10 -12 -13 -15 -15 -15 -14 -14 -13 -13 -12 -13 -13 -12 -11 -9 -9 -9 -9 -6 -5 -4 -3 -2 -1 -1 -3 -5 -8 -11 -14 -17 -18 -18 -15 -13 -9 -5 -2 -0 -0 -0 -1 -1 -5 -9 -13 -16 -20 -24 -26 -25 -23 -19 -16 -13 -12 -11 -11 -12 -12 -12 -13 -13 -12 -12 -12 -12 -12 -14 -15 -16 -17 -16 -13 -10 -6 -1 5 9 10 9 7 7 5 4 5 5 3 -1 -5 -10 -14 -18 -22 -26 -28 -29 -27 -24 -19 -16 -15 -16 -17 -17 -17 -17 -18 -21 -21 -21 -21 -22 -22 -22 -20 -18 -16 -16 -16 -16 -16 -15 -15 -16 -19 -21 -23 -24 -23 -22 -21 -19 -17 -16 -16 -16 -17 -15 -13 -13 -13 -14 -14 -13 -12 -11 -11 -13 -13 -14 -16 -20 -24 -27 -29 -32 -34 -34 -32 -29 -25 -22 -19 -18 -17 -17 -18 -20 -22 -23 -21 -16 -14 -15 -18 -20 -21 -19 -17 -15 -16 -18 -21 -23 -23 -23 -21 -21 -19 -18 -20 -25 -28 -30 -30 -31 -31 -30 -29 -28 -27 -26 -24 -23 -21 -19 -14 -11 -11 -15 -20 -20 -18 -16 -14 -14 -18 -22 -23 -21 -16 -11 -10 -11 -11 -10 -9 -9 -10 -12 -14 -15 -16 -18 -22 -26 -28 -29 -29 -30 -35 -44 -50 -54 -53 -50 -44 -40 -36 -33 -31 -29 -27 -27 -27 -27 -25 -24 -25 -29 -34 -35 -33 -30 -30 -32 -33 -34 -35 -34 -28 -22 -18 -19 -23 -30 -39 -46 -49 -48 -47 -45 -44 -43 -41 -37 -30 -25 -22 -19 -22 -23 -21 -15 -15 -17 -17 -17 -20 -31 -32 -15 -13 -11 -8 -7 -7 -7 -7 -9 -11 -12 -13 -13 -14 -15 -16 -17 -18 -18 -18 -17 -17 -16 -15 -15 -13 -11 -10 -11 -12 -14 -15 -17 -19 -21 -21 -19 -17 -19 -19 -18 -16 -15 -16 -16 -16 -15 -14 -14 -14 -13 -13 -13 -14 -13 -14 -14 -14 -14 -16 -17 -17 -16 -14 -13 -14 -15 -17 -19 -20 -21 -22 -22 -23 -23 -23 -23 -22 -22 -21 -20 -20 -20 -20 -18 -17 -16 -16 -15 -15 -15 -14 -14 -13 -12 -11 -11 -11 -11 -8 -5 -2 1 2 3 2 0 -2 -3 -4 -5 -7 -10 -11 -12 -12 -12 -13 -13 -13 -13 -13 -12 -11 -10 -11 -13 -14 -15 -16 -14 -10 -5 -1 0 0 -1 -2 -3 -5 -7 -10 -13 -14 -15 -15 -13 -11 -7 -4 -2 -0 2 2 -0 -3 -7 -11 -18 -23 -26 -26 -24 -20 -17 -15 -14 -13 -12 -12 -12 -12 -13 -13 -13 -13 -13 -13 -13 -14 -16 -19 -21 -21 -20 -19 -16 -11 -5 1 4 5 6 5 6 8 9 7 -1 -7 -10 -10 -9 -12 -16 -21 -25 -28 -29 -25 -21 -17 -15 -15 -15 -15 -17 -20 -21 -21 -20 -21 -22 -23 -23 -22 -20 -17 -16 -15 -15 -15 -15 -15 -16 -17 -20 -22 -23 -24 -23 -22 -21 -21 -19 -18 -17 -17 -15 -14 -12 -12 -12 -14 -15 -14 -13 -12 -13 -13 -13 -12 -13 -16 -20 -24 -27 -31 -33 -34 -33 -30 -26 -22 -20 -19 -18 -19 -21 -23 -24 -23 -19 -15 -14 -15 -19 -21 -21 -19 -16 -15 -17 -21 -23 -24 -24 -24 -23 -21 -17 -17 -22 -26 -29 -30 -31 -32 -32 -32 -31 -29 -27 -26 -25 -24 -22 -19 -15 -12 -12 -16 -18 -19 -18 -16 -14 -16 -19 -23 -24 -21 -15 -12 -11 -10 -9 -8 -7 -8 -10 -12 -14 -15 -16 -19 -23 -27 -28 -29 -29 -33 -41 -48 -53 -54 -52 -47 -42 -38 -35 -33 -31 -28 -27 -27 -28 -26 -24 -25 -28 -34 -36 -35 -32 -30 -32 -33 -34 -36 -37 -33 -27 -21 -19 -22 -28 -35 -43 -48 -50 -48 -46 -45 -45 -43 -39 -34 -29 -24 -16 -17 -18 -16 -10 -13 -17 -18 -18 -20 -31 -33 -13 -11 -9 -7 -6 -6 -6 -7 -10 -12 -14 -14 -14 -15 -17 -18 -19 -20 -20 -21 -21 -21 -21 -21 -21 -20 -17 -15 -15 -16 -16 -17 -18 -19 -20 -21 -22 -23 -25 -21 -17 -14 -13 -14 -15 -15 -13 -11 -10 -10 -9 -9 -10 -11 -11 -12 -12 -13 -13 -14 -15 -15 -14 -13 -12 -11 -12 -13 -15 -16 -17 -17 -17 -18 -19 -19 -20 -21 -21 -20 -20 -19 -19 -20 -21 -21 -20 -20 -19 -18 -17 -16 -15 -14 -14 -13 -14 -14 -16 -16 -14 -11 -9 -7 -5 -4 -3 -2 -1 -0 -1 -3 -6 -8 -9 -10 -10 -10 -11 -12 -13 -13 -12 -10 -9 -9 -11 -12 -14 -17 -19 -18 -16 -12 -7 -2 1 2 2 2 -0 -2 -5 -6 -9 -11 -14 -17 -16 -12 -8 -4 -0 3 5 6 4 -0 -7 -15 -21 -24 -25 -22 -20 -19 -17 -16 -14 -13 -12 -12 -13 -14 -14 -14 -14 -14 -14 -14 -15 -16 -18 -20 -21 -22 -23 -22 -20 -16 -11 -6 -4 -1 3 8 11 11 5 0 -2 -1 -0 -3 -7 -13 -20 -26 -28 -27 -24 -20 -16 -14 -13 -14 -17 -20 -20 -19 -19 -20 -21 -21 -22 -22 -22 -20 -18 -16 -15 -15 -16 -15 -15 -16 -18 -20 -22 -23 -24 -24 -25 -25 -23 -21 -19 -18 -16 -14 -13 -11 -11 -13 -15 -16 -16 -14 -13 -13 -12 -11 -10 -11 -13 -18 -22 -27 -32 -35 -36 -35 -31 -26 -23 -21 -19 -20 -21 -23 -24 -24 -21 -18 -15 -14 -17 -20 -22 -21 -18 -16 -17 -20 -24 -26 -26 -25 -25 -23 -19 -16 -19 -22 -26 -29 -31 -33 -34 -35 -34 -31 -30 -29 -28 -27 -26 -24 -20 -15 -11 -11 -13 -16 -18 -19 -17 -15 -16 -19 -23 -24 -20 -16 -11 -9 -7 -6 -6 -6 -8 -11 -14 -16 -17 -19 -23 -27 -29 -30 -31 -34 -39 -46 -51 -53 -52 -49 -45 -40 -37 -34 -32 -29 -27 -26 -27 -26 -25 -25 -28 -35 -39 -39 -35 -30 -30 -32 -34 -35 -36 -36 -33 -28 -23 -22 -25 -31 -38 -45 -49 -48 -46 -45 -46 -45 -42 -38 -32 -22 -12 -11 -13 -13 -8 -13 -16 -18 -18 -19 -30 -33 -12 -12 -10 -9 -8 -8 -9 -11 -14 -17 -18 -18 -17 -17 -17 -17 -19 -21 -21 -21 -21 -20 -19 -20 -22 -22 -22 -21 -20 -19 -18 -17 -17 -18 -20 -22 -23 -23 -22 -18 -15 -12 -12 -16 -17 -15 -12 -9 -8 -8 -8 -8 -8 -10 -11 -11 -12 -13 -14 -14 -14 -14 -13 -13 -13 -12 -12 -12 -13 -13 -13 -12 -12 -13 -13 -14 -15 -16 -17 -16 -15 -14 -14 -16 -17 -18 -18 -18 -18 -17 -16 -14 -13 -13 -12 -12 -12 -13 -15 -17 -17 -17 -15 -15 -14 -13 -11 -9 -7 -5 -3 -3 -3 -4 -5 -7 -8 -8 -8 -9 -11 -13 -13 -12 -12 -11 -10 -10 -10 -14 -17 -19 -20 -19 -16 -11 -7 -5 -1 2 5 6 5 3 1 -2 -6 -11 -14 -17 -16 -13 -8 -1 6 10 12 9 4 -3 -10 -16 -21 -20 -20 -20 -20 -18 -16 -14 -12 -12 -12 -13 -14 -15 -15 -15 -15 -15 -16 -16 -16 -17 -18 -19 -22 -25 -25 -24 -23 -21 -19 -15 -8 -1 7 11 11 10 9 8 6 3 -2 -9 -16 -21 -25 -26 -26 -24 -19 -15 -13 -13 -14 -16 -17 -18 -18 -17 -18 -19 -21 -22 -23 -23 -21 -20 -18 -17 -16 -15 -15 -16 -17 -18 -20 -22 -23 -25 -25 -25 -24 -21 -19 -18 -16 -15 -13 -12 -11 -13 -15 -17 -19 -18 -16 -14 -12 -10 -7 -6 -7 -12 -18 -24 -29 -34 -38 -40 -36 -32 -27 -24 -21 -21 -21 -22 -23 -24 -22 -20 -17 -14 -15 -18 -22 -23 -20 -18 -18 -20 -23 -27 -28 -27 -27 -25 -22 -19 -18 -19 -22 -25 -28 -31 -34 -35 -35 -33 -32 -31 -30 -30 -29 -28 -25 -21 -15 -11 -10 -12 -16 -19 -19 -17 -16 -17 -21 -24 -24 -20 -14 -8 -6 -6 -6 -6 -6 -10 -13 -16 -18 -19 -22 -25 -28 -30 -31 -34 -39 -45 -49 -52 -53 -51 -47 -42 -38 -35 -33 -30 -28 -26 -26 -27 -27 -25 -28 -35 -40 -41 -37 -31 -29 -29 -32 -33 -34 -35 -34 -31 -25 -21 -22 -26 -33 -41 -46 -46 -44 -45 -47 -48 -46 -42 -33 -20 -14 -11 -11 -11 -9 -12 -16 -19 -19 -19 -26 -30 -15 -15 -15 -15 -14 -14 -15 -17 -19 -20 -21 -21 -20 -19 -18 -18 -20 -21 -22 -21 -21 -19 -18 -19 -20 -20 -19 -18 -18 -18 -18 -18 -18 -18 -17 -15 -14 -14 -14 -11 -8 -8 -10 -13 -13 -12 -10 -9 -8 -9 -9 -9 -9 -11 -12 -12 -13 -13 -15 -15 -15 -15 -15 -15 -15 -15 -14 -14 -14 -13 -12 -12 -11 -11 -11 -12 -12 -12 -12 -11 -10 -9 -9 -9 -10 -11 -11 -12 -12 -12 -11 -10 -9 -8 -7 -7 -7 -8 -9 -12 -13 -14 -14 -15 -16 -17 -17 -16 -14 -11 -9 -7 -5 -4 -4 -6 -7 -7 -6 -7 -9 -12 -13 -14 -15 -15 -13 -11 -9 -11 -12 -14 -17 -19 -19 -18 -16 -15 -10 -5 0 5 7 7 7 6 3 0 -4 -9 -13 -16 -15 -10 -4 2 8 9 8 5 1 -5 -13 -16 -18 -18 -19 -19 -18 -15 -13 -12 -11 -13 -13 -14 -15 -15 -15 -17 -18 -19 -18 -18 -18 -18 -19 -22 -23 -24 -26 -27 -28 -26 -21 -14 -6 1 8 13 15 15 13 10 5 -2 -11 -18 -21 -22 -22 -20 -19 -18 -16 -14 -12 -13 -14 -15 -15 -15 -16 -17 -19 -21 -23 -24 -24 -23 -21 -19 -18 -17 -16 -16 -15 -17 -18 -20 -23 -26 -28 -29 -27 -25 -23 -22 -20 -18 -15 -13 -11 -11 -14 -17 -19 -20 -19 -17 -14 -10 -7 -5 -6 -11 -16 -21 -26 -31 -35 -39 -40 -37 -32 -28 -24 -23 -22 -21 -21 -23 -23 -22 -20 -16 -14 -16 -20 -23 -22 -20 -19 -19 -22 -30 -33 -32 -30 -28 -26 -24 -20 -18 -18 -21 -25 -28 -31 -33 -35 -34 -34 -34 -33 -33 -32 -31 -28 -25 -21 -15 -10 -9 -12 -16 -20 -20 -19 -18 -19 -23 -25 -23 -18 -11 -7 -6 -6 -6 -6 -8 -12 -15 -17 -18 -20 -23 -26 -28 -29 -33 -37 -43 -48 -52 -54 -53 -49 -45 -41 -37 -34 -31 -28 -26 -26 -27 -27 -26 -28 -34 -39 -41 -38 -32 -28 -26 -27 -29 -30 -31 -31 -30 -26 -21 -20 -24 -32 -41 -45 -45 -44 -43 -46 -48 -48 -44 -36 -24 -18 -15 -13 -12 -10 -12 -16 -19 -20 -19 -21 -24 -19 -19 -20 -20 -19 -19 -20 -20 -20 -19 -18 -18 -19 -20 -20 -20 -20 -20 -19 -18 -17 -15 -15 -15 -16 -15 -13 -11 -11 -10 -10 -11 -12 -13 -11 -8 -6 -6 -7 -5 -5 -6 -8 -9 -9 -10 -11 -11 -10 -9 -9 -9 -10 -11 -13 -13 -13 -14 -16 -17 -16 -16 -16 -16 -17 -17 -17 -17 -16 -16 -15 -15 -15 -15 -14 -14 -13 -12 -12 -11 -9 -8 -7 -6 -6 -6 -5 -5 -5 -5 -4 -3 -3 -2 -1 -1 -1 -1 -1 -2 -4 -5 -6 -7 -10 -12 -14 -14 -14 -14 -12 -11 -10 -8 -7 -7 -8 -7 -6 -6 -7 -9 -12 -15 -17 -17 -16 -15 -13 -12 -11 -10 -11 -13 -16 -17 -19 -20 -18 -14 -9 -3 1 4 6 7 7 7 4 0 -5 -10 -14 -15 -13 -8 -2 2 5 7 8 6 -0 -7 -11 -14 -16 -17 -18 -17 -15 -14 -13 -13 -13 -13 -14 -16 -16 -16 -17 -19 -21 -21 -22 -21 -20 -21 -22 -23 -24 -26 -29 -29 -27 -23 -19 -13 -4 4 11 15 17 16 12 5 -4 -9 -13 -15 -15 -15 -17 -19 -19 -18 -17 -16 -14 -12 -11 -11 -13 -14 -16 -18 -21 -24 -26 -26 -26 -23 -21 -19 -18 -18 -17 -19 -20 -21 -23 -26 -29 -30 -29 -27 -25 -24 -23 -21 -18 -14 -12 -11 -12 -14 -16 -18 -19 -19 -16 -12 -9 -7 -7 -8 -10 -14 -18 -23 -29 -34 -39 -40 -38 -33 -28 -25 -23 -22 -21 -23 -23 -22 -21 -18 -15 -15 -18 -22 -23 -22 -21 -19 -19 -27 -32 -34 -33 -30 -28 -27 -24 -20 -17 -18 -21 -24 -27 -30 -32 -34 -35 -36 -36 -35 -34 -32 -30 -27 -24 -20 -15 -10 -8 -11 -17 -21 -21 -19 -18 -21 -23 -24 -21 -14 -9 -6 -5 -6 -6 -8 -10 -13 -15 -16 -18 -20 -23 -26 -28 -31 -35 -40 -46 -50 -53 -53 -52 -48 -45 -40 -36 -32 -29 -27 -26 -26 -27 -27 -28 -32 -37 -38 -37 -33 -28 -24 -21 -22 -25 -27 -28 -27 -26 -23 -21 -22 -28 -37 -43 -46 -45 -42 -43 -46 -47 -44 -38 -30 -23 -19 -17 -17 -12 -12 -15 -19 -22 -20 -18 -19 -20 -21 -21 -21 -20 -19 -20 -20 -19 -18 -17 -17 -17 -18 -19 -19 -19 -17 -15 -14 -12 -11 -11 -13 -15 -12 -8 -5 -4 -4 -5 -7 -9 -8 -8 -6 -5 -4 -5 -5 -6 -8 -10 -9 -9 -11 -12 -12 -10 -9 -9 -9 -10 -11 -11 -12 -13 -14 -16 -17 -16 -15 -14 -14 -15 -16 -17 -17 -16 -17 -17 -18 -19 -20 -21 -20 -19 -17 -16 -15 -14 -13 -11 -10 -9 -8 -7 -5 -3 -1 1 2 3 4 4 4 4 4 5 6 6 5 5 3 1 -1 -2 -4 -6 -8 -10 -12 -13 -12 -10 -10 -10 -9 -8 -7 -6 -7 -9 -13 -15 -16 -16 -17 -16 -16 -14 -11 -9 -9 -10 -12 -15 -18 -19 -18 -15 -11 -8 -4 -1 1 3 5 5 5 2 -2 -6 -11 -13 -14 -11 -8 -2 3 8 10 9 5 -0 -5 -9 -12 -15 -16 -17 -15 -14 -14 -14 -14 -15 -17 -17 -16 -16 -17 -20 -22 -23 -23 -24 -24 -25 -25 -26 -26 -27 -26 -25 -24 -24 -23 -18 -11 -3 6 11 15 15 12 6 2 -4 -9 -13 -15 -15 -18 -22 -23 -22 -18 -14 -12 -11 -11 -11 -12 -14 -16 -19 -22 -26 -28 -30 -28 -26 -24 -22 -21 -20 -20 -20 -20 -20 -23 -26 -28 -29 -28 -26 -25 -25 -24 -22 -20 -17 -14 -13 -12 -12 -15 -18 -19 -18 -16 -13 -10 -8 -6 -6 -7 -11 -16 -22 -28 -34 -37 -39 -37 -33 -30 -27 -24 -22 -22 -22 -22 -21 -20 -17 -16 -17 -20 -23 -24 -23 -21 -19 -23 -30 -34 -35 -33 -31 -29 -28 -25 -21 -17 -17 -19 -22 -25 -28 -31 -34 -36 -37 -37 -35 -33 -31 -30 -28 -24 -20 -15 -9 -8 -12 -17 -21 -20 -18 -19 -22 -24 -23 -18 -12 -8 -6 -6 -6 -7 -8 -9 -12 -14 -16 -18 -22 -26 -28 -30 -33 -37 -42 -46 -49 -51 -52 -51 -48 -44 -39 -34 -30 -28 -26 -26 -27 -27 -27 -29 -33 -35 -35 -34 -30 -23 -17 -14 -18 -22 -24 -24 -24 -24 -24 -25 -31 -40 -46 -48 -45 -41 -42 -45 -47 -45 -40 -35 -29 -25 -22 -21 -16 -14 -15 -19 -22 -22 -20 -17 -20 -20 -20 -20 -20 -19 -19 -19 -19 -18 -17 -16 -15 -16 -16 -16 -14 -12 -11 -9 -8 -7 -8 -10 -13 -11 -7 -5 -6 -7 -9 -10 -11 -9 -10 -10 -8 -7 -7 -7 -10 -14 -16 -14 -11 -11 -12 -12 -10 -9 -9 -9 -9 -10 -10 -11 -12 -14 -14 -14 -13 -13 -12 -12 -12 -13 -13 -13 -13 -14 -15 -16 -18 -20 -21 -22 -22 -21 -21 -20 -19 -18 -17 -16 -16 -15 -15 -13 -10 -7 -3 0 3 5 7 7 6 6 6 8 8 8 8 9 10 9 8 7 5 2 -1 -5 -8 -11 -12 -11 -11 -11 -9 -8 -7 -7 -7 -9 -11 -12 -14 -15 -16 -17 -16 -14 -11 -10 -8 -8 -9 -12 -14 -15 -16 -15 -15 -12 -10 -7 -5 -3 -0 1 2 2 1 -2 -7 -11 -14 -14 -11 -5 1 6 10 10 8 5 1 -4 -8 -13 -15 -16 -15 -15 -16 -16 -17 -17 -16 -16 -16 -16 -16 -19 -21 -24 -27 -28 -30 -31 -31 -30 -28 -25 -22 -21 -22 -25 -25 -22 -17 -10 -2 4 9 12 11 9 4 -3 -10 -16 -17 -19 -22 -23 -22 -20 -17 -15 -13 -11 -12 -12 -13 -14 -17 -19 -23 -27 -32 -34 -32 -30 -28 -26 -24 -21 -19 -18 -18 -19 -23 -25 -26 -27 -26 -26 -26 -26 -26 -25 -22 -20 -17 -14 -12 -13 -16 -19 -19 -20 -17 -14 -11 -7 -5 -4 -5 -9 -14 -20 -26 -31 -36 -40 -39 -36 -32 -27 -24 -22 -22 -22 -21 -21 -20 -18 -16 -18 -22 -24 -24 -22 -20 -20 -26 -31 -35 -35 -33 -31 -30 -28 -26 -21 -18 -17 -18 -20 -24 -27 -31 -34 -37 -37 -35 -34 -32 -32 -31 -28 -24 -20 -15 -10 -9 -12 -17 -20 -20 -20 -21 -23 -24 -20 -16 -11 -7 -6 -6 -7 -8 -9 -12 -15 -17 -19 -22 -26 -28 -30 -31 -34 -38 -41 -45 -48 -52 -53 -51 -47 -42 -37 -32 -29 -27 -26 -26 -26 -26 -27 -29 -33 -35 -34 -30 -23 -17 -11 -12 -16 -20 -20 -21 -23 -25 -27 -33 -43 -51 -53 -48 -40 -41 -46 -49 -49 -44 -39 -34 -30 -27 -25 -20 -16 -16 -19 -22 -24 -22 -19 -20 -19 -19 -20 -20 -19 -17 -17 -17 -17 -16 -15 -14 -13 -13 -12 -10 -9 -7 -6 -5 -4 -6 -9 -12 -12 -11 -11 -14 -17 -17 -16 -14 -13 -15 -15 -13 -11 -11 -11 -12 -13 -15 -14 -11 -10 -10 -10 -10 -9 -8 -8 -8 -9 -9 -10 -11 -11 -12 -12 -12 -11 -11 -11 -11 -10 -10 -10 -9 -9 -9 -10 -11 -13 -15 -16 -18 -19 -19 -19 -18 -17 -16 -16 -16 -17 -18 -19 -18 -16 -12 -8 -4 -0 3 4 4 3 2 3 4 5 8 11 13 14 14 14 13 11 8 5 1 -4 -7 -11 -13 -13 -12 -11 -10 -9 -9 -10 -10 -10 -11 -13 -14 -15 -15 -15 -15 -14 -11 -9 -8 -8 -9 -11 -12 -13 -15 -15 -14 -14 -13 -12 -9 -7 -5 -2 1 1 -1 -5 -9 -13 -14 -13 -8 -2 4 8 10 10 8 4 -0 -5 -9 -11 -12 -13 -14 -15 -16 -16 -15 -15 -15 -16 -16 -17 -18 -20 -24 -28 -31 -33 -34 -34 -31 -27 -23 -21 -20 -22 -24 -24 -24 -21 -17 -11 -5 2 7 9 9 5 -2 -10 -16 -21 -23 -24 -25 -23 -21 -18 -15 -13 -13 -14 -16 -17 -18 -19 -22 -27 -32 -36 -37 -36 -33 -30 -28 -25 -22 -19 -17 -18 -20 -22 -24 -25 -27 -28 -28 -29 -28 -28 -26 -24 -22 -18 -15 -12 -12 -14 -16 -19 -19 -18 -16 -12 -7 -4 -3 -4 -7 -11 -18 -25 -32 -39 -41 -40 -36 -31 -27 -24 -23 -22 -21 -21 -21 -19 -17 -17 -20 -23 -24 -24 -22 -19 -22 -27 -33 -36 -35 -33 -32 -30 -29 -26 -22 -19 -17 -17 -19 -22 -26 -31 -34 -35 -34 -33 -33 -33 -32 -30 -27 -24 -20 -15 -10 -10 -13 -17 -19 -20 -20 -21 -23 -22 -18 -14 -8 -6 -6 -8 -9 -10 -13 -15 -18 -20 -22 -25 -28 -30 -30 -31 -34 -37 -42 -47 -52 -54 -53 -50 -45 -39 -35 -31 -28 -27 -26 -25 -25 -26 -29 -33 -34 -33 -29 -23 -18 -13 -11 -12 -17 -19 -19 -21 -24 -27 -31 -42 -54 -61 -58 -47 -41 -42 -47 -51 -47 -41 -37 -34 -30 -28 -24 -21 -19 -20 -23 -25 -25 -22 -18 -18 -19 -20 -20 -18 -16 -15 -15 -14 -13 -13 -12 -11 -11 -10 -8 -7 -6 -5 -5 -6 -8 -11 -14 -16 -16 -17 -17 -17 -17 -17 -16 -16 -16 -18 -20 -19 -16 -12 -12 -13 -13 -10 -8 -8 -8 -8 -8 -7 -6 -6 -6 -7 -7 -8 -9 -10 -11 -12 -12 -11 -11 -10 -9 -8 -7 -7 -6 -5 -5 -5 -6 -7 -9 -10 -12 -14 -16 -16 -16 -15 -14 -13 -13 -14 -15 -17 -19 -19 -18 -15 -12 -9 -6 -3 -2 -2 -2 -1 1 2 4 7 10 13 16 17 18 16 15 12 10 4 -1 -5 -7 -9 -10 -10 -11 -12 -12 -13 -12 -12 -12 -11 -11 -11 -11 -12 -14 -15 -14 -13 -12 -10 -8 -7 -7 -7 -11 -11 -14 -15 -16 -17 -16 -15 -14 -12 -8 -5 -2 -1 -3 -6 -11 -13 -14 -11 -6 0 5 8 10 9 7 4 0 -3 -6 -9 -11 -13 -15 -15 -14 -14 -14 -16 -15 -16 -17 -18 -22 -26 -29 -31 -32 -32 -30 -27 -24 -22 -21 -20 -19 -20 -21 -23 -24 -23 -20 -14 -6 1 6 8 5 -2 -9 -16 -21 -24 -26 -25 -24 -21 -18 -15 -14 -14 -15 -16 -17 -18 -20 -23 -27 -32 -35 -36 -36 -33 -31 -29 -26 -23 -19 -17 -18 -19 -21 -24 -27 -30 -31 -31 -30 -29 -28 -27 -25 -23 -21 -18 -15 -14 -14 -17 -19 -20 -20 -18 -13 -8 -4 -2 -2 -5 -10 -17 -25 -33 -39 -41 -39 -35 -30 -27 -24 -22 -22 -22 -22 -22 -20 -19 -19 -21 -24 -25 -24 -21 -20 -23 -28 -34 -36 -36 -34 -33 -31 -29 -26 -22 -19 -18 -17 -18 -21 -25 -30 -32 -32 -32 -33 -35 -34 -32 -30 -28 -24 -20 -15 -10 -8 -11 -16 -20 -21 -21 -22 -22 -20 -16 -11 -7 -7 -8 -10 -11 -13 -15 -17 -19 -21 -24 -27 -29 -29 -30 -32 -36 -41 -46 -51 -54 -53 -51 -47 -42 -37 -33 -30 -27 -25 -25 -25 -27 -30 -34 -34 -31 -27 -23 -20 -17 -13 -12 -12 -16 -18 -19 -22 -26 -29 -38 -52 -67 -73 -60 -46 -39 -41 -47 -46 -42 -37 -34 -32 -29 -28 -26 -23 -22 -24 -26 -27 -25 -16 -16 -17 -18 -18 -15 -14 -14 -13 -12 -11 -10 -10 -9 -9 -8 -8 -9 -9 -9 -10 -12 -15 -17 -19 -20 -19 -18 -16 -15 -15 -16 -16 -16 -15 -17 -19 -18 -15 -13 -12 -10 -9 -7 -7 -7 -7 -7 -6 -6 -5 -5 -5 -5 -6 -7 -8 -10 -11 -11 -11 -11 -10 -10 -8 -7 -6 -6 -5 -5 -4 -4 -4 -5 -5 -6 -7 -10 -12 -14 -14 -14 -13 -11 -11 -11 -12 -14 -16 -17 -18 -17 -16 -15 -13 -11 -9 -8 -8 -6 -3 -1 1 2 6 10 15 17 19 20 19 17 15 11 6 2 1 -1 -4 -7 -9 -11 -13 -13 -13 -13 -13 -13 -13 -11 -10 -10 -12 -13 -13 -13 -13 -12 -11 -10 -9 -8 -10 -9 -11 -13 -14 -16 -18 -19 -20 -19 -18 -16 -12 -8 -4 -3 -5 -10 -14 -15 -14 -9 -4 1 5 9 10 9 7 4 1 -2 -6 -9 -12 -13 -12 -12 -13 -15 -14 -16 -17 -18 -20 -23 -27 -29 -30 -30 -28 -26 -24 -23 -22 -22 -21 -20 -19 -20 -22 -25 -26 -27 -24 -18 -11 -4 1 0 -1 -4 -10 -16 -22 -24 -25 -23 -19 -16 -14 -14 -15 -16 -17 -17 -18 -20 -22 -26 -31 -34 -37 -38 -35 -33 -31 -28 -24 -20 -18 -17 -18 -21 -26 -30 -32 -32 -31 -30 -29 -29 -28 -27 -26 -23 -19 -17 -14 -16 -19 -22 -23 -22 -19 -14 -9 -3 2 3 0 -6 -16 -26 -34 -38 -39 -37 -33 -30 -27 -24 -22 -22 -22 -23 -23 -22 -21 -21 -22 -24 -25 -23 -20 -19 -22 -29 -34 -37 -37 -35 -33 -31 -28 -26 -23 -21 -19 -17 -17 -20 -24 -26 -28 -30 -33 -36 -36 -34 -32 -30 -28 -25 -20 -15 -10 -9 -13 -17 -21 -22 -22 -22 -22 -20 -15 -10 -8 -9 -11 -12 -13 -15 -18 -20 -22 -24 -27 -29 -30 -30 -32 -36 -40 -45 -49 -51 -52 -51 -48 -44 -40 -35 -31 -28 -25 -24 -24 -26 -29 -33 -33 -30 -26 -25 -23 -20 -16 -13 -11 -12 -15 -18 -22 -27 -29 -34 -47 -66 -81 -70 -52 -39 -38 -42 -43 -40 -36 -33 -32 -31 -30 -29 -27 -26 -27 -29 -31 -28 -13 -14 -15 -15 -15 -13 -13 -13 -12 -11 -11 -11 -10 -10 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -19 -19 -18 -17 -14 -12 -13 -14 -15 -14 -12 -13 -13 -13 -12 -12 -11 -9 -8 -8 -7 -7 -7 -7 -7 -7 -6 -5 -4 -5 -5 -7 -8 -8 -9 -9 -9 -9 -9 -9 -8 -7 -7 -6 -6 -6 -6 -5 -5 -4 -3 -4 -5 -6 -9 -10 -11 -12 -11 -11 -10 -10 -10 -10 -12 -13 -14 -15 -15 -16 -15 -15 -15 -14 -14 -12 -9 -6 -4 -2 1 5 9 14 16 19 20 18 16 14 11 9 8 6 3 -1 -4 -8 -11 -11 -12 -13 -14 -15 -15 -13 -12 -12 -12 -12 -13 -13 -14 -14 -14 -12 -11 -10 -11 -10 -11 -12 -14 -16 -18 -20 -22 -23 -24 -23 -22 -20 -16 -10 -8 -8 -11 -14 -16 -16 -14 -10 -5 -0 4 7 8 7 5 3 0 -3 -7 -8 -9 -10 -12 -14 -13 -15 -17 -18 -19 -21 -24 -26 -28 -27 -26 -23 -22 -21 -22 -23 -23 -22 -21 -20 -22 -23 -25 -27 -29 -28 -26 -20 -12 -5 3 6 3 -4 -14 -20 -22 -21 -19 -17 -16 -17 -18 -18 -18 -17 -16 -17 -18 -22 -26 -30 -33 -36 -36 -36 -35 -32 -29 -24 -22 -20 -19 -20 -22 -27 -31 -33 -32 -31 -30 -30 -30 -30 -30 -28 -24 -21 -17 -16 -17 -19 -21 -23 -22 -19 -15 -11 -3 1 2 -0 -9 -18 -26 -32 -36 -38 -36 -34 -30 -27 -23 -23 -23 -23 -25 -25 -23 -22 -21 -21 -25 -25 -23 -20 -18 -22 -29 -34 -37 -37 -35 -33 -31 -28 -26 -23 -22 -19 -18 -16 -17 -20 -23 -27 -31 -35 -36 -35 -33 -32 -30 -28 -25 -21 -15 -11 -11 -13 -16 -19 -20 -22 -23 -23 -19 -13 -10 -9 -11 -13 -14 -16 -18 -21 -24 -26 -28 -29 -30 -31 -31 -33 -37 -42 -45 -48 -50 -51 -50 -47 -43 -39 -34 -30 -26 -23 -23 -25 -28 -31 -32 -30 -27 -27 -25 -22 -19 -15 -12 -11 -12 -15 -20 -24 -28 -32 -40 -58 -77 -71 -54 -39 -38 -40 -41 -39 -35 -33 -32 -32 -31 -30 -28 -28 -30 -33 -36 -34 -13 -14 -14 -15 -15 -15 -15 -14 -14 -14 -14 -14 -14 -14 -14 -15 -15 -16 -16 -16 -17 -17 -17 -17 -16 -16 -15 -15 -13 -12 -13 -13 -13 -11 -10 -10 -9 -9 -10 -10 -9 -9 -8 -8 -8 -8 -9 -9 -8 -7 -6 -5 -4 -4 -4 -6 -6 -6 -6 -6 -7 -7 -7 -7 -6 -6 -6 -5 -5 -5 -6 -6 -5 -4 -3 -3 -3 -3 -4 -5 -6 -6 -7 -8 -8 -8 -8 -7 -8 -8 -9 -10 -12 -13 -14 -15 -16 -16 -17 -16 -14 -11 -9 -7 -5 -3 1 6 10 14 15 15 15 15 15 14 13 12 10 7 3 -3 -7 -9 -11 -12 -13 -14 -15 -15 -15 -15 -14 -13 -12 -13 -13 -14 -14 -13 -13 -12 -12 -12 -12 -13 -14 -15 -18 -20 -23 -25 -26 -27 -27 -26 -25 -20 -15 -13 -12 -12 -14 -16 -17 -16 -14 -10 -6 -1 2 5 6 5 3 2 0 -1 -5 -8 -11 -13 -12 -14 -16 -18 -20 -21 -22 -24 -25 -25 -26 -25 -23 -21 -21 -22 -23 -23 -22 -22 -23 -23 -24 -26 -28 -29 -30 -29 -27 -22 -12 -5 -2 -5 -14 -20 -22 -22 -21 -20 -19 -20 -20 -20 -20 -17 -15 -15 -16 -19 -22 -25 -27 -31 -34 -36 -36 -35 -34 -31 -28 -24 -20 -21 -22 -25 -28 -31 -30 -29 -29 -30 -32 -32 -33 -32 -30 -27 -22 -19 -17 -17 -20 -21 -22 -22 -20 -18 -11 -6 -1 -0 -4 -10 -17 -24 -31 -37 -39 -37 -34 -30 -26 -25 -23 -23 -25 -26 -24 -23 -22 -20 -22 -24 -24 -22 -18 -18 -22 -28 -34 -36 -36 -34 -32 -30 -28 -26 -24 -22 -20 -17 -16 -16 -18 -21 -26 -32 -35 -35 -34 -34 -32 -31 -29 -26 -22 -16 -12 -10 -12 -14 -17 -20 -22 -22 -19 -15 -11 -9 -9 -12 -14 -16 -19 -22 -26 -28 -29 -29 -30 -34 -36 -37 -37 -40 -43 -47 -49 -51 -51 -49 -46 -42 -38 -32 -28 -24 -22 -23 -26 -29 -30 -30 -28 -28 -27 -24 -21 -18 -15 -12 -11 -11 -14 -20 -25 -29 -35 -48 -66 -63 -50 -38 -39 -40 -40 -38 -36 -34 -33 -33 -31 -29 -27 -28 -32 -37 -42 -41 -15 -16 -16 -17 -17 -18 -17 -17 -17 -17 -16 -16 -16 -15 -15 -16 -16 -16 -16 -16 -15 -15 -14 -14 -13 -13 -13 -13 -12 -12 -12 -12 -11 -10 -9 -8 -8 -7 -8 -8 -8 -8 -7 -7 -8 -8 -9 -9 -8 -6 -5 -4 -3 -2 -2 -3 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -1 -0 -0 1 1 1 0 -1 -4 -4 -4 -3 -3 -3 -3 -5 -7 -10 -11 -12 -13 -14 -15 -15 -15 -14 -13 -13 -12 -10 -8 -4 -0 3 6 8 11 14 15 16 17 17 16 13 10 4 -1 -6 -8 -9 -10 -10 -13 -15 -16 -17 -16 -14 -13 -12 -12 -13 -13 -13 -13 -14 -14 -13 -14 -14 -15 -16 -17 -19 -22 -25 -27 -29 -29 -29 -29 -26 -23 -20 -18 -15 -16 -17 -18 -19 -19 -17 -14 -11 -7 -5 -2 1 3 5 5 3 -0 -4 -6 -7 -7 -10 -13 -17 -21 -22 -23 -22 -22 -24 -26 -27 -26 -22 -20 -20 -21 -21 -23 -25 -26 -27 -25 -24 -23 -25 -27 -29 -31 -30 -25 -19 -13 -6 -7 -12 -16 -19 -19 -19 -19 -20 -20 -21 -20 -18 -15 -13 -14 -17 -19 -21 -23 -26 -30 -34 -37 -37 -37 -36 -34 -30 -25 -23 -21 -21 -24 -27 -28 -28 -30 -33 -36 -36 -35 -34 -33 -33 -29 -25 -22 -19 -20 -21 -22 -23 -23 -22 -19 -14 -8 -3 -0 -3 -8 -17 -26 -33 -37 -38 -37 -34 -28 -26 -24 -24 -26 -26 -25 -24 -22 -20 -20 -22 -23 -23 -21 -18 -18 -21 -27 -33 -35 -35 -34 -32 -30 -28 -26 -24 -22 -19 -17 -15 -14 -16 -21 -27 -31 -34 -34 -35 -34 -33 -33 -31 -28 -23 -17 -12 -10 -11 -14 -17 -21 -23 -22 -18 -12 -8 -8 -10 -13 -16 -18 -21 -26 -29 -30 -30 -31 -36 -38 -40 -40 -41 -44 -48 -50 -52 -52 -51 -49 -46 -42 -35 -30 -26 -22 -22 -25 -26 -27 -28 -30 -31 -30 -27 -23 -20 -17 -14 -12 -10 -10 -14 -19 -25 -32 -38 -50 -51 -44 -39 -40 -41 -40 -39 -37 -35 -34 -33 -31 -28 -27 -28 -32 -38 -44 -46 -17 -18 -18 -19 -19 -19 -18 -18 -17 -18 -18 -17 -16 -16 -15 -15 -15 -15 -14 -14 -14 -13 -12 -12 -12 -12 -11 -11 -12 -11 -12 -12 -11 -10 -9 -8 -8 -7 -7 -7 -7 -7 -6 -6 -6 -6 -7 -7 -6 -3 -2 -1 0 1 1 1 1 1 0 0 0 -0 -0 -0 -0 0 -0 -0 -1 -1 -0 0 0 -0 0 1 3 4 4 5 6 6 5 5 4 3 2 2 3 3 1 -0 -2 -5 -6 -7 -8 -8 -9 -10 -10 -10 -11 -13 -14 -15 -14 -14 -12 -10 -6 -2 3 6 9 12 14 16 16 16 14 10 6 2 -1 -3 -5 -7 -11 -13 -15 -16 -17 -16 -15 -14 -13 -13 -13 -13 -13 -13 -13 -14 -15 -16 -16 -17 -17 -19 -21 -23 -26 -28 -30 -31 -30 -30 -28 -26 -23 -21 -20 -20 -20 -20 -20 -19 -18 -17 -15 -14 -11 -9 -6 -3 -2 1 1 1 -1 -5 -4 -6 -9 -15 -20 -21 -22 -22 -21 -22 -24 -25 -24 -22 -19 -18 -18 -19 -21 -24 -26 -27 -26 -24 -22 -21 -23 -26 -30 -33 -33 -29 -24 -17 -12 -8 -8 -10 -14 -16 -16 -17 -17 -17 -16 -15 -14 -12 -12 -14 -17 -20 -21 -22 -26 -31 -35 -36 -38 -39 -39 -37 -32 -29 -25 -24 -24 -26 -26 -27 -30 -33 -35 -35 -34 -34 -34 -35 -33 -30 -27 -24 -22 -21 -22 -23 -24 -24 -24 -21 -16 -11 -5 -2 -4 -9 -17 -27 -33 -37 -37 -36 -31 -29 -27 -25 -26 -26 -25 -24 -23 -21 -20 -20 -21 -23 -23 -20 -17 -17 -20 -27 -31 -33 -34 -34 -32 -30 -28 -26 -24 -22 -19 -16 -13 -13 -16 -21 -27 -31 -34 -35 -35 -35 -35 -34 -32 -29 -24 -18 -13 -11 -12 -14 -18 -22 -23 -21 -15 -9 -7 -9 -12 -15 -17 -19 -24 -28 -31 -33 -34 -36 -39 -41 -42 -43 -45 -47 -50 -52 -53 -53 -52 -49 -45 -39 -33 -28 -23 -22 -23 -23 -23 -25 -30 -33 -33 -30 -26 -22 -19 -17 -14 -11 -10 -11 -15 -20 -28 -30 -34 -37 -39 -41 -42 -42 -42 -41 -39 -37 -36 -34 -32 -30 -30 -30 -33 -38 -43 -48 -18 -18 -19 -19 -19 -19 -18 -17 -16 -17 -17 -17 -16 -15 -15 -14 -14 -13 -13 -13 -13 -12 -11 -11 -12 -13 -13 -12 -13 -12 -11 -12 -12 -11 -10 -10 -10 -9 -9 -8 -7 -7 -6 -5 -4 -4 -4 -4 -3 -1 1 2 2 2 2 2 2 2 2 0 -0 -1 -0 -1 -1 -1 -1 -2 -2 -2 -1 -0 1 1 1 2 3 4 5 4 4 5 6 6 5 4 4 4 3 3 2 0 -2 -4 -6 -6 -5 -4 -3 -3 -4 -5 -6 -9 -11 -13 -14 -16 -17 -17 -16 -14 -11 -7 -3 1 5 7 10 13 14 14 12 10 7 4 1 -1 -6 -9 -11 -13 -15 -16 -17 -17 -15 -14 -13 -13 -13 -12 -13 -14 -15 -16 -16 -17 -17 -18 -19 -21 -23 -26 -29 -31 -31 -31 -30 -28 -26 -25 -23 -23 -22 -21 -21 -20 -19 -18 -18 -18 -18 -17 -16 -13 -11 -9 -6 -2 0 0 0 -3 -7 -12 -17 -19 -19 -18 -19 -20 -22 -23 -23 -22 -19 -18 -16 -16 -18 -20 -22 -23 -23 -23 -22 -21 -22 -24 -27 -31 -32 -32 -30 -26 -22 -15 -10 -8 -10 -11 -13 -14 -14 -11 -10 -11 -12 -14 -13 -13 -13 -15 -17 -20 -24 -28 -32 -33 -36 -39 -41 -41 -38 -35 -30 -27 -26 -26 -26 -26 -27 -31 -34 -32 -30 -29 -30 -34 -35 -35 -33 -30 -26 -24 -23 -23 -24 -25 -26 -26 -23 -20 -13 -7 -4 -4 -9 -18 -27 -34 -39 -40 -36 -32 -28 -26 -26 -24 -25 -24 -23 -22 -20 -19 -19 -21 -22 -21 -18 -16 -15 -18 -23 -28 -31 -34 -34 -32 -29 -27 -25 -24 -21 -19 -15 -13 -13 -17 -22 -28 -32 -36 -37 -37 -36 -35 -34 -32 -29 -24 -18 -14 -11 -12 -15 -20 -24 -24 -20 -13 -8 -7 -9 -12 -16 -18 -22 -27 -33 -36 -36 -37 -39 -42 -43 -44 -45 -47 -50 -52 -54 -54 -54 -52 -48 -42 -36 -31 -25 -23 -23 -22 -22 -22 -28 -33 -35 -34 -29 -25 -22 -19 -16 -13 -12 -12 -13 -17 -24 -26 -27 -31 -38 -44 -45 -45 -44 -44 -43 -41 -39 -36 -34 -33 -33 -33 -34 -39 -44 -49 -17 -18 -18 -18 -18 -18 -17 -16 -15 -15 -16 -16 -15 -15 -14 -13 -13 -12 -11 -12 -12 -11 -11 -11 -13 -16 -18 -18 -17 -13 -11 -11 -12 -13 -12 -11 -12 -12 -12 -8 -7 -6 -6 -5 -2 -2 -3 -3 -0 2 1 -2 -4 -5 -3 -1 0 1 -0 -1 -2 -2 -3 -3 -3 -3 -4 -4 -5 -5 -5 -4 -3 -2 -1 -1 -1 -1 -1 -2 -3 -3 -3 -2 -2 -3 -3 -4 -4 -4 -4 -5 -6 -8 -9 -9 -8 -6 -5 -4 -3 -4 -5 -7 -9 -10 -12 -13 -15 -15 -15 -15 -14 -13 -11 -8 -5 -3 -0 3 7 10 12 12 11 9 6 3 -0 -3 -6 -7 -8 -10 -12 -13 -13 -13 -14 -16 -18 -18 -17 -15 -15 -17 -18 -18 -17 -17 -17 -18 -21 -24 -27 -30 -32 -32 -31 -30 -28 -27 -25 -25 -24 -22 -21 -20 -20 -19 -20 -21 -21 -21 -20 -18 -17 -16 -15 -12 -9 -6 -2 -2 -4 -6 -11 -13 -14 -13 -13 -16 -21 -24 -24 -23 -20 -19 -17 -16 -15 -15 -17 -20 -21 -22 -21 -22 -23 -23 -23 -25 -27 -29 -30 -29 -28 -24 -19 -13 -11 -9 -8 -9 -10 -9 -8 -8 -10 -12 -13 -13 -15 -17 -19 -22 -25 -29 -30 -28 -31 -35 -40 -43 -42 -39 -34 -30 -27 -26 -25 -24 -24 -28 -31 -31 -30 -30 -30 -32 -34 -34 -35 -35 -32 -29 -27 -25 -25 -27 -29 -29 -28 -26 -21 -15 -9 -5 -4 -10 -18 -28 -35 -38 -37 -34 -30 -28 -27 -24 -24 -25 -24 -22 -21 -19 -18 -18 -20 -21 -19 -17 -15 -14 -16 -21 -27 -32 -34 -33 -30 -27 -25 -25 -24 -22 -19 -16 -14 -14 -17 -22 -29 -34 -36 -37 -36 -35 -34 -33 -31 -27 -23 -18 -14 -12 -13 -18 -24 -26 -25 -19 -11 -7 -7 -10 -14 -18 -23 -28 -32 -35 -36 -37 -40 -42 -43 -44 -46 -47 -49 -51 -53 -54 -55 -53 -50 -45 -39 -34 -28 -24 -23 -22 -21 -20 -25 -31 -35 -36 -32 -28 -25 -21 -18 -15 -14 -14 -15 -16 -20 -25 -27 -30 -39 -47 -49 -49 -49 -49 -48 -45 -42 -39 -36 -35 -35 -34 -36 -40 -46 -51 -16 -17 -17 -17 -17 -17 -17 -16 -15 -15 -15 -15 -15 -14 -13 -13 -12 -11 -11 -11 -12 -10 -9 -10 -12 -17 -20 -21 -19 -13 -11 -11 -11 -11 -10 -9 -9 -8 -7 -5 -5 -5 -4 -2 1 2 1 -1 -1 -1 -1 -2 -3 -4 -4 -4 -3 -3 -3 -3 -3 -4 -5 -5 -4 -4 -4 -4 -5 -5 -6 -5 -5 -5 -5 -5 -6 -7 -7 -8 -8 -9 -9 -9 -8 -9 -10 -12 -11 -11 -11 -11 -12 -13 -14 -14 -13 -11 -10 -8 -7 -7 -8 -9 -10 -11 -11 -12 -14 -14 -14 -14 -14 -14 -13 -12 -11 -10 -7 -4 -1 3 6 8 9 9 8 7 4 1 -1 -2 -2 -4 -6 -9 -10 -11 -11 -13 -15 -16 -17 -16 -16 -16 -16 -18 -18 -18 -18 -19 -21 -23 -26 -29 -32 -33 -33 -32 -30 -28 -27 -26 -24 -22 -21 -21 -22 -22 -23 -23 -23 -22 -20 -19 -19 -19 -20 -20 -19 -17 -13 -10 -8 -4 -4 -6 -8 -10 -12 -14 -19 -22 -23 -21 -18 -17 -17 -17 -17 -17 -17 -18 -20 -22 -23 -23 -23 -22 -22 -22 -23 -24 -26 -28 -29 -29 -26 -22 -17 -13 -10 -8 -8 -8 -6 -6 -7 -11 -14 -16 -18 -19 -20 -23 -25 -26 -25 -24 -25 -30 -36 -40 -43 -41 -39 -35 -31 -27 -24 -22 -22 -24 -27 -27 -27 -26 -26 -27 -29 -30 -32 -34 -33 -32 -31 -30 -30 -30 -30 -30 -30 -28 -26 -22 -16 -10 -5 -5 -11 -20 -29 -35 -36 -35 -32 -29 -29 -25 -23 -24 -24 -23 -22 -21 -19 -18 -18 -18 -18 -18 -16 -14 -13 -15 -20 -27 -31 -32 -31 -28 -26 -25 -25 -24 -23 -20 -17 -14 -15 -18 -23 -29 -33 -35 -36 -35 -35 -34 -32 -29 -26 -22 -18 -15 -13 -17 -23 -28 -30 -26 -16 -9 -6 -7 -11 -16 -22 -28 -32 -36 -39 -40 -41 -41 -43 -44 -46 -47 -47 -48 -51 -53 -54 -54 -52 -48 -43 -38 -32 -27 -24 -23 -22 -19 -22 -27 -32 -35 -33 -30 -27 -24 -20 -17 -16 -16 -17 -18 -19 -24 -28 -31 -40 -49 -52 -51 -51 -51 -50 -47 -44 -40 -37 -36 -35 -35 -36 -39 -45 -51 -15 -17 -17 -17 -17 -17 -17 -16 -16 -15 -15 -14 -14 -13 -13 -12 -12 -12 -12 -12 -13 -13 -12 -12 -13 -16 -19 -21 -21 -20 -18 -16 -13 -10 -7 -7 -6 -5 -3 -2 -2 -2 -1 -0 0 1 0 -1 -3 -4 -4 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -3 -3 -3 -4 -4 -5 -5 -6 -6 -7 -8 -9 -9 -10 -10 -10 -10 -9 -9 -9 -9 -10 -11 -13 -14 -13 -14 -15 -15 -16 -17 -18 -17 -16 -15 -13 -12 -11 -11 -12 -13 -13 -13 -13 -14 -14 -13 -13 -12 -13 -13 -13 -13 -13 -12 -11 -8 -5 -2 0 3 5 8 10 9 7 4 1 0 1 0 -2 -6 -9 -9 -9 -11 -14 -15 -15 -14 -14 -14 -15 -16 -17 -19 -22 -23 -24 -25 -27 -30 -32 -33 -33 -32 -30 -29 -27 -25 -23 -21 -21 -22 -24 -26 -26 -25 -24 -21 -20 -19 -20 -21 -23 -24 -24 -23 -21 -17 -12 -7 -4 -5 -7 -9 -12 -16 -19 -19 -18 -17 -16 -17 -18 -19 -21 -21 -20 -19 -19 -19 -19 -20 -20 -21 -23 -23 -23 -24 -25 -28 -29 -30 -28 -25 -20 -16 -13 -10 -8 -6 -4 -5 -8 -11 -14 -16 -18 -19 -19 -20 -20 -20 -20 -22 -26 -31 -36 -40 -41 -41 -39 -36 -31 -26 -23 -20 -19 -19 -19 -20 -21 -22 -22 -23 -26 -29 -33 -34 -34 -33 -32 -31 -30 -30 -30 -30 -30 -29 -26 -23 -18 -11 -7 -7 -12 -21 -29 -34 -35 -34 -32 -30 -27 -24 -24 -24 -24 -23 -22 -20 -18 -16 -16 -17 -17 -16 -15 -13 -12 -14 -20 -26 -30 -30 -28 -25 -23 -24 -25 -25 -23 -20 -17 -14 -15 -19 -25 -30 -33 -35 -36 -35 -34 -33 -31 -29 -26 -23 -19 -16 -17 -22 -28 -33 -32 -24 -15 -8 -6 -9 -15 -21 -28 -33 -37 -40 -41 -41 -40 -42 -44 -45 -46 -44 -45 -47 -50 -53 -54 -53 -50 -45 -41 -36 -30 -26 -23 -23 -20 -20 -24 -29 -33 -33 -32 -30 -27 -23 -20 -18 -19 -20 -21 -21 -24 -28 -33 -40 -49 -52 -52 -50 -51 -51 -48 -45 -40 -37 -36 -35 -35 -35 -37 -43 -49 -15 -17 -17 -17 -17 -17 -17 -17 -16 -15 -14 -14 -14 -13 -14 -14 -14 -14 -15 -15 -16 -16 -16 -15 -16 -16 -18 -20 -20 -19 -18 -14 -12 -10 -10 -9 -8 -6 -5 -2 -1 -2 -2 -3 -4 -4 -5 -6 -7 -9 -10 -10 -9 -8 -8 -6 -5 -4 -3 -2 -2 -2 -2 -1 -1 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -11 -12 -11 -11 -10 -9 -8 -8 -8 -9 -11 -12 -13 -14 -15 -15 -15 -16 -16 -18 -19 -19 -18 -16 -13 -12 -11 -13 -14 -15 -15 -15 -14 -13 -12 -12 -11 -11 -11 -11 -12 -13 -14 -14 -14 -13 -10 -8 -5 -2 2 5 8 9 9 7 5 5 5 4 2 -1 -2 -4 -6 -9 -11 -12 -13 -14 -14 -15 -15 -16 -19 -21 -23 -24 -24 -25 -27 -29 -31 -33 -34 -33 -31 -30 -28 -26 -23 -21 -22 -23 -26 -28 -29 -28 -25 -22 -21 -20 -21 -22 -24 -25 -26 -26 -25 -22 -16 -11 -8 -9 -10 -12 -15 -16 -15 -12 -11 -12 -14 -17 -19 -21 -21 -20 -19 -18 -17 -18 -18 -19 -20 -21 -21 -22 -23 -24 -27 -29 -30 -30 -29 -26 -23 -19 -15 -12 -9 -7 -7 -8 -9 -10 -11 -12 -14 -14 -15 -16 -18 -20 -22 -23 -26 -30 -36 -39 -39 -39 -38 -34 -30 -24 -19 -14 -11 -11 -14 -17 -20 -20 -21 -23 -25 -30 -32 -33 -33 -32 -30 -29 -28 -28 -29 -30 -30 -29 -26 -24 -19 -13 -8 -6 -11 -21 -28 -33 -34 -33 -32 -29 -26 -24 -23 -24 -23 -23 -22 -20 -17 -15 -15 -15 -15 -16 -15 -13 -12 -13 -19 -25 -28 -27 -26 -24 -23 -24 -25 -26 -24 -21 -17 -15 -17 -22 -27 -30 -33 -35 -35 -35 -34 -33 -31 -29 -27 -24 -20 -19 -21 -27 -34 -37 -33 -23 -13 -6 -8 -14 -20 -27 -32 -36 -40 -42 -42 -41 -42 -44 -45 -44 -42 -42 -44 -48 -51 -53 -53 -51 -47 -43 -38 -32 -27 -24 -24 -21 -20 -21 -26 -30 -33 -33 -32 -29 -26 -23 -21 -21 -22 -23 -22 -24 -27 -32 -37 -46 -51 -52 -50 -50 -50 -49 -46 -42 -38 -36 -35 -35 -35 -36 -40 -46 -15 -16 -17 -17 -17 -16 -17 -16 -16 -14 -13 -14 -14 -14 -15 -16 -16 -16 -17 -17 -17 -17 -17 -17 -16 -16 -17 -17 -17 -16 -14 -13 -13 -14 -15 -13 -11 -10 -8 -5 -4 -5 -6 -7 -8 -10 -11 -11 -11 -13 -14 -12 -11 -10 -9 -6 -4 -3 -2 -1 -1 -1 -1 -1 -0 -1 -2 -4 -6 -7 -7 -8 -9 -11 -12 -13 -13 -13 -13 -12 -12 -11 -11 -10 -11 -12 -13 -15 -16 -17 -18 -18 -17 -16 -16 -17 -19 -21 -20 -17 -13 -10 -9 -10 -12 -14 -14 -14 -13 -12 -11 -10 -10 -10 -10 -10 -10 -11 -12 -14 -15 -16 -16 -15 -13 -11 -9 -6 -1 4 7 10 9 9 9 9 8 5 3 1 -2 -4 -6 -8 -10 -12 -12 -13 -14 -15 -17 -19 -21 -22 -23 -24 -25 -27 -30 -33 -34 -33 -32 -31 -29 -28 -26 -24 -23 -22 -24 -27 -29 -30 -30 -28 -25 -23 -22 -21 -21 -23 -25 -26 -27 -26 -23 -20 -17 -17 -16 -16 -16 -14 -11 -8 -6 -7 -10 -13 -17 -20 -21 -20 -20 -19 -18 -18 -18 -19 -20 -21 -22 -22 -23 -23 -25 -27 -29 -30 -29 -29 -27 -25 -21 -18 -15 -13 -12 -12 -11 -9 -8 -8 -10 -13 -14 -16 -18 -20 -20 -21 -22 -26 -29 -32 -35 -37 -39 -38 -35 -30 -25 -17 -11 -9 -10 -14 -17 -17 -19 -21 -22 -25 -27 -29 -31 -31 -30 -29 -27 -26 -27 -28 -29 -29 -28 -27 -24 -19 -14 -9 -7 -14 -23 -29 -33 -34 -33 -31 -28 -26 -25 -24 -23 -23 -22 -22 -19 -15 -13 -13 -12 -14 -15 -15 -13 -10 -13 -18 -23 -26 -26 -24 -23 -23 -25 -26 -26 -25 -22 -18 -17 -19 -23 -27 -31 -33 -34 -35 -34 -34 -33 -32 -30 -27 -24 -22 -22 -26 -33 -39 -39 -32 -20 -8 -8 -13 -20 -26 -30 -34 -38 -41 -42 -41 -41 -41 -42 -42 -42 -43 -45 -47 -48 -50 -52 -52 -51 -47 -41 -34 -29 -26 -24 -22 -21 -21 -24 -30 -33 -35 -34 -31 -28 -26 -24 -23 -23 -23 -24 -24 -26 -31 -34 -41 -48 -52 -50 -49 -49 -50 -48 -44 -40 -37 -35 -35 -35 -35 -38 -43 -15 -15 -15 -15 -15 -15 -15 -15 -15 -14 -14 -14 -15 -15 -16 -17 -17 -16 -16 -16 -16 -15 -15 -15 -15 -15 -14 -14 -13 -12 -11 -12 -15 -17 -17 -15 -13 -11 -10 -8 -7 -8 -9 -10 -11 -12 -13 -13 -12 -13 -12 -10 -9 -8 -7 -5 -4 -4 -3 -2 -1 -1 -2 -3 -4 -4 -5 -7 -8 -8 -8 -9 -10 -11 -13 -14 -15 -16 -16 -16 -15 -15 -14 -14 -14 -16 -19 -21 -23 -24 -25 -25 -25 -23 -22 -21 -22 -25 -25 -21 -16 -12 -9 -8 -9 -9 -9 -10 -10 -10 -9 -9 -9 -10 -10 -11 -11 -11 -12 -12 -13 -14 -16 -18 -18 -19 -19 -17 -13 -8 -2 3 7 10 11 11 10 7 5 4 3 1 -2 -5 -7 -8 -8 -9 -10 -12 -14 -15 -17 -19 -21 -23 -24 -26 -28 -31 -32 -32 -32 -31 -30 -29 -28 -26 -24 -23 -23 -25 -27 -30 -31 -31 -30 -27 -25 -22 -20 -21 -21 -22 -24 -25 -24 -23 -22 -22 -22 -21 -19 -16 -12 -9 -5 -4 -5 -9 -14 -17 -19 -19 -19 -20 -20 -20 -20 -20 -20 -21 -22 -22 -22 -23 -25 -27 -28 -29 -29 -29 -29 -28 -26 -24 -21 -18 -16 -14 -14 -12 -10 -8 -10 -13 -15 -17 -18 -18 -18 -18 -19 -21 -24 -27 -30 -34 -38 -39 -38 -34 -30 -23 -16 -11 -7 -6 -8 -11 -14 -17 -20 -21 -21 -23 -26 -28 -30 -29 -27 -25 -24 -26 -28 -29 -29 -29 -27 -24 -20 -15 -11 -13 -19 -26 -30 -33 -34 -33 -31 -29 -27 -24 -24 -24 -23 -22 -20 -17 -15 -15 -13 -13 -14 -15 -16 -11 -10 -12 -18 -23 -24 -24 -23 -22 -23 -25 -26 -27 -26 -23 -20 -19 -20 -24 -28 -31 -33 -34 -34 -34 -34 -33 -32 -30 -27 -25 -23 -25 -30 -38 -42 -40 -31 -17 -10 -12 -18 -24 -29 -33 -37 -40 -42 -40 -38 -39 -41 -46 -48 -47 -46 -47 -48 -50 -52 -54 -54 -51 -44 -37 -31 -27 -25 -24 -22 -21 -23 -28 -34 -37 -37 -34 -31 -28 -26 -24 -24 -24 -24 -25 -26 -29 -32 -38 -44 -51 -50 -48 -48 -49 -49 -45 -40 -36 -34 -34 -36 -36 -37 -41 -13 -13 -13 -13 -13 -13 -14 -14 -15 -14 -14 -14 -15 -16 -16 -16 -16 -15 -14 -14 -13 -13 -12 -12 -12 -12 -11 -10 -9 -9 -8 -10 -13 -16 -15 -12 -10 -9 -9 -9 -9 -9 -10 -11 -10 -10 -11 -11 -9 -6 -7 -9 -11 -13 -11 -9 -7 -7 -5 -4 -5 -5 -6 -7 -7 -7 -7 -8 -8 -8 -9 -9 -10 -12 -13 -15 -16 -17 -17 -17 -17 -16 -15 -15 -14 -15 -17 -21 -24 -27 -30 -32 -33 -33 -32 -31 -31 -31 -33 -30 -26 -20 -13 -8 -4 -2 -2 -4 -7 -8 -8 -8 -8 -8 -9 -10 -11 -12 -12 -12 -12 -12 -13 -15 -17 -19 -21 -21 -21 -18 -13 -8 -2 3 7 9 9 8 7 7 7 5 1 -2 -3 -4 -3 -3 -4 -5 -8 -10 -13 -15 -18 -20 -21 -23 -25 -28 -29 -30 -30 -30 -30 -30 -28 -27 -26 -25 -24 -25 -26 -28 -29 -31 -32 -31 -29 -26 -22 -20 -18 -18 -20 -22 -22 -23 -24 -24 -24 -25 -24 -21 -17 -15 -8 -4 -3 -5 -9 -12 -13 -14 -15 -18 -20 -22 -22 -22 -21 -21 -22 -22 -22 -23 -24 -25 -26 -28 -28 -29 -29 -29 -29 -28 -25 -23 -21 -18 -15 -13 -12 -10 -11 -13 -15 -16 -16 -16 -16 -15 -15 -16 -18 -21 -24 -29 -34 -37 -38 -37 -34 -28 -22 -15 -8 -4 -2 -3 -7 -11 -15 -17 -16 -17 -19 -23 -27 -28 -28 -26 -24 -25 -25 -27 -29 -30 -29 -28 -26 -22 -16 -12 -14 -21 -27 -30 -33 -33 -33 -32 -30 -26 -25 -25 -24 -22 -21 -19 -17 -15 -13 -12 -13 -14 -15 -13 -11 -10 -12 -17 -20 -22 -23 -22 -22 -23 -25 -28 -29 -28 -25 -22 -21 -21 -24 -27 -30 -33 -34 -35 -35 -35 -34 -33 -30 -27 -25 -25 -29 -36 -42 -45 -41 -31 -19 -14 -16 -21 -26 -31 -35 -38 -40 -39 -39 -41 -45 -50 -51 -49 -47 -47 -48 -51 -54 -55 -55 -51 -46 -40 -34 -30 -27 -26 -25 -23 -24 -29 -36 -40 -41 -37 -34 -31 -29 -26 -25 -24 -24 -24 -25 -27 -31 -34 -40 -48 -50 -49 -48 -48 -49 -46 -41 -37 -33 -33 -35 -36 -36 -37 -12 -12 -12 -12 -13 -13 -14 -14 -14 -14 -13 -14 -14 -14 -14 -15 -14 -13 -12 -11 -10 -10 -9 -9 -8 -8 -8 -7 -7 -6 -6 -7 -8 -10 -10 -10 -10 -9 -9 -10 -10 -9 -8 -8 -8 -7 -6 -5 -4 -4 -7 -12 -16 -19 -17 -13 -9 -7 -7 -7 -8 -8 -8 -9 -9 -10 -10 -9 -9 -9 -9 -9 -9 -10 -11 -12 -13 -14 -14 -15 -15 -14 -14 -13 -13 -12 -13 -15 -18 -21 -25 -29 -33 -35 -36 -37 -36 -35 -36 -36 -35 -32 -27 -20 -13 -7 -3 -1 -2 -3 -4 -5 -5 -5 -7 -8 -10 -11 -12 -12 -12 -12 -11 -12 -14 -16 -18 -20 -21 -21 -20 -18 -14 -9 -3 2 6 7 7 8 8 7 4 1 -0 0 2 3 3 1 -2 -4 -7 -10 -13 -16 -17 -19 -21 -23 -24 -25 -26 -27 -28 -29 -28 -27 -27 -26 -25 -25 -25 -25 -27 -29 -31 -32 -31 -29 -26 -22 -18 -16 -18 -20 -20 -22 -24 -25 -26 -26 -26 -24 -23 -22 -14 -8 -4 -2 -5 -7 -8 -8 -10 -15 -18 -21 -23 -24 -24 -24 -23 -23 -23 -24 -24 -25 -26 -27 -27 -27 -28 -29 -30 -29 -28 -26 -23 -19 -17 -15 -14 -13 -14 -15 -16 -17 -15 -14 -13 -12 -11 -11 -14 -16 -20 -25 -29 -33 -35 -35 -34 -31 -27 -21 -14 -8 -3 -1 -1 -4 -8 -12 -13 -14 -13 -15 -21 -25 -27 -28 -26 -25 -24 -25 -27 -30 -30 -30 -29 -27 -21 -16 -14 -17 -22 -25 -28 -31 -33 -34 -33 -30 -27 -25 -24 -22 -21 -20 -19 -17 -15 -13 -13 -13 -14 -14 -13 -11 -11 -12 -16 -20 -22 -23 -22 -21 -23 -26 -30 -31 -30 -27 -23 -20 -21 -23 -26 -30 -33 -35 -36 -36 -36 -35 -33 -30 -27 -26 -28 -34 -41 -46 -47 -41 -28 -18 -13 -16 -22 -27 -32 -35 -37 -40 -42 -46 -50 -54 -53 -50 -48 -49 -50 -53 -55 -55 -53 -51 -47 -42 -37 -32 -29 -27 -26 -26 -25 -30 -36 -41 -43 -41 -38 -34 -31 -29 -26 -24 -24 -24 -24 -25 -29 -32 -36 -43 -48 -48 -47 -47 -48 -47 -43 -38 -33 -32 -34 -35 -35 -35 -12 -12 -12 -13 -13 -13 -13 -14 -14 -13 -12 -12 -12 -12 -12 -12 -12 -11 -10 -9 -8 -8 -7 -6 -5 -5 -6 -6 -7 -7 -6 -7 -8 -9 -10 -10 -10 -10 -10 -10 -9 -8 -6 -5 -5 -6 -6 -8 -10 -14 -16 -16 -16 -15 -13 -11 -9 -9 -8 -9 -9 -9 -9 -10 -10 -10 -10 -10 -9 -9 -9 -10 -10 -10 -10 -11 -11 -10 -9 -9 -10 -11 -10 -9 -10 -9 -9 -10 -11 -14 -17 -21 -26 -30 -34 -36 -37 -36 -36 -37 -37 -37 -35 -32 -27 -21 -14 -7 -2 -0 -0 -1 -2 -3 -3 -4 -6 -8 -9 -11 -12 -12 -11 -12 -13 -14 -15 -17 -19 -20 -21 -21 -18 -15 -11 -7 -4 1 4 6 8 10 9 8 7 8 10 11 9 7 5 2 -0 -3 -6 -9 -11 -13 -15 -17 -18 -19 -22 -24 -26 -27 -27 -26 -25 -25 -25 -24 -24 -23 -24 -26 -28 -30 -31 -31 -29 -24 -19 -15 -17 -18 -19 -20 -23 -25 -27 -27 -26 -25 -24 -24 -17 -12 -8 -4 -5 -5 -4 -4 -5 -10 -14 -18 -21 -24 -25 -26 -26 -25 -25 -25 -24 -24 -25 -26 -25 -26 -27 -28 -30 -31 -31 -30 -28 -23 -20 -17 -16 -16 -18 -20 -21 -21 -18 -15 -11 -9 -10 -10 -12 -14 -18 -22 -25 -27 -29 -31 -32 -31 -30 -26 -21 -15 -9 -4 -1 0 -1 -4 -8 -11 -11 -10 -12 -17 -23 -27 -27 -26 -24 -24 -25 -28 -31 -32 -31 -30 -26 -21 -17 -16 -17 -20 -23 -29 -34 -34 -35 -32 -29 -27 -25 -22 -21 -21 -21 -19 -17 -16 -15 -13 -13 -13 -13 -12 -12 -11 -13 -17 -21 -24 -22 -21 -21 -23 -29 -32 -33 -30 -26 -22 -21 -21 -23 -27 -32 -34 -35 -36 -36 -36 -35 -33 -30 -27 -27 -32 -39 -46 -50 -49 -40 -27 -14 -11 -15 -22 -29 -34 -38 -42 -47 -51 -55 -56 -55 -53 -52 -52 -53 -54 -55 -54 -52 -50 -48 -45 -40 -34 -30 -28 -27 -27 -26 -28 -33 -39 -42 -41 -38 -34 -32 -30 -27 -25 -24 -23 -23 -23 -26 -29 -33 -39 -45 -47 -47 -46 -48 -48 -45 -39 -34 -32 -33 -34 -35 -34 -13 -13 -13 -13 -13 -13 -13 -13 -13 -12 -11 -11 -10 -10 -10 -10 -10 -10 -9 -7 -6 -5 -4 -3 -3 -4 -5 -6 -8 -10 -8 -7 -7 -7 -7 -7 -6 -6 -7 -7 -7 -5 -4 -4 -5 -6 -8 -10 -13 -16 -18 -18 -17 -15 -12 -10 -9 -9 -8 -8 -8 -9 -10 -10 -10 -10 -10 -10 -10 -9 -9 -10 -11 -13 -13 -12 -11 -9 -6 -7 -8 -8 -8 -7 -7 -8 -7 -7 -7 -8 -10 -13 -17 -21 -27 -31 -34 -35 -34 -34 -35 -36 -36 -36 -34 -31 -26 -19 -12 -6 -2 -1 -1 -1 -1 -1 -2 -4 -5 -7 -9 -10 -10 -11 -12 -13 -14 -16 -17 -18 -19 -20 -19 -18 -16 -14 -12 -9 -5 -2 2 6 7 8 10 14 16 15 13 11 10 8 7 4 1 -2 -5 -7 -10 -12 -14 -16 -18 -20 -22 -23 -25 -24 -24 -23 -22 -22 -22 -22 -22 -22 -24 -27 -29 -31 -29 -25 -19 -14 -15 -16 -18 -19 -20 -23 -25 -25 -26 -26 -26 -25 -21 -17 -14 -11 -6 -3 -3 -3 -3 -5 -8 -12 -16 -20 -24 -26 -27 -27 -26 -26 -25 -24 -25 -25 -25 -25 -26 -27 -29 -31 -32 -32 -30 -27 -24 -21 -19 -18 -16 -18 -21 -23 -24 -20 -15 -11 -10 -11 -11 -11 -13 -16 -19 -21 -23 -26 -28 -30 -30 -29 -27 -23 -17 -11 -4 1 3 1 -2 -5 -8 -9 -10 -13 -17 -23 -26 -28 -27 -25 -24 -27 -30 -32 -33 -32 -29 -25 -22 -18 -14 -16 -20 -25 -32 -34 -35 -35 -33 -30 -26 -24 -22 -21 -22 -21 -19 -18 -17 -15 -14 -13 -13 -12 -13 -12 -12 -14 -17 -20 -21 -20 -19 -20 -26 -31 -33 -32 -28 -25 -22 -21 -22 -25 -29 -32 -34 -35 -36 -37 -36 -35 -32 -30 -28 -30 -36 -44 -51 -53 -48 -38 -23 -14 -13 -19 -27 -36 -42 -47 -52 -55 -57 -57 -57 -55 -54 -54 -54 -54 -52 -50 -50 -50 -49 -47 -42 -37 -32 -29 -28 -28 -27 -26 -29 -35 -40 -41 -38 -35 -31 -29 -27 -26 -24 -23 -22 -22 -23 -27 -31 -36 -43 -47 -47 -45 -47 -48 -46 -41 -35 -33 -33 -33 -34 -33 -13 -13 -13 -13 -12 -12 -11 -11 -11 -12 -11 -10 -9 -9 -9 -8 -8 -7 -6 -5 -4 -2 -2 -2 -3 -4 -6 -7 -8 -8 -7 -6 -5 -4 -4 -3 -3 -4 -4 -5 -6 -6 -6 -6 -8 -8 -10 -11 -13 -15 -16 -17 -16 -15 -12 -10 -9 -8 -8 -8 -8 -9 -10 -11 -10 -10 -10 -10 -11 -11 -11 -12 -13 -16 -17 -15 -13 -11 -8 -9 -9 -9 -8 -7 -8 -8 -8 -7 -6 -5 -6 -7 -10 -13 -18 -23 -28 -30 -31 -31 -31 -31 -32 -33 -34 -34 -32 -28 -22 -15 -10 -5 -4 -3 -2 -2 -1 -1 -1 -2 -4 -6 -7 -8 -9 -11 -12 -14 -15 -16 -17 -18 -18 -18 -17 -17 -17 -16 -14 -11 -7 -3 1 5 9 13 17 17 16 15 13 12 11 9 7 5 1 -4 -8 -9 -9 -10 -11 -13 -15 -17 -21 -21 -20 -19 -18 -19 -20 -20 -20 -19 -20 -22 -25 -28 -26 -23 -17 -12 -12 -14 -16 -17 -18 -20 -22 -23 -24 -26 -26 -27 -23 -20 -18 -18 -11 -7 -4 -3 -3 -4 -5 -7 -11 -16 -21 -25 -29 -30 -30 -29 -27 -25 -26 -25 -25 -25 -26 -27 -28 -30 -32 -32 -30 -27 -25 -24 -23 -22 -19 -18 -18 -21 -26 -25 -21 -17 -14 -11 -9 -8 -9 -12 -15 -16 -18 -20 -23 -26 -29 -30 -30 -28 -25 -19 -12 -6 0 2 2 -0 -4 -6 -8 -10 -12 -17 -20 -25 -27 -27 -25 -27 -29 -32 -33 -33 -31 -29 -26 -22 -15 -15 -17 -21 -28 -33 -35 -35 -34 -31 -27 -25 -23 -22 -22 -22 -20 -19 -19 -17 -15 -14 -13 -13 -14 -13 -13 -13 -15 -18 -19 -19 -18 -18 -22 -28 -31 -33 -31 -28 -25 -23 -23 -24 -27 -29 -31 -33 -35 -37 -37 -37 -35 -32 -30 -29 -33 -40 -50 -54 -53 -47 -34 -21 -17 -20 -27 -35 -41 -47 -52 -55 -57 -58 -58 -57 -55 -54 -53 -52 -50 -49 -49 -49 -49 -48 -45 -40 -35 -31 -29 -29 -28 -26 -27 -31 -38 -41 -40 -36 -32 -30 -28 -27 -26 -24 -22 -21 -22 -24 -29 -34 -41 -46 -47 -45 -45 -46 -46 -42 -37 -34 -33 -33 -33 -33 -12 -12 -11 -11 -10 -10 -9 -9 -10 -10 -10 -8 -8 -7 -7 -7 -6 -6 -5 -4 -3 -2 -3 -4 -5 -6 -7 -7 -6 -6 -4 -3 -3 -2 -2 -3 -3 -4 -5 -7 -8 -9 -9 -9 -10 -10 -10 -11 -11 -12 -13 -14 -14 -15 -15 -13 -10 -9 -9 -9 -9 -10 -11 -11 -10 -11 -12 -13 -14 -16 -16 -16 -15 -17 -19 -19 -17 -15 -13 -13 -13 -12 -10 -10 -11 -11 -10 -9 -7 -6 -5 -5 -6 -8 -11 -15 -19 -23 -25 -26 -26 -27 -27 -28 -29 -30 -30 -30 -28 -23 -18 -13 -9 -7 -6 -5 -3 -1 1 2 1 -1 -3 -4 -5 -7 -8 -11 -12 -14 -15 -16 -17 -17 -17 -18 -19 -19 -19 -18 -16 -14 -10 -5 -0 6 11 13 14 14 13 12 12 11 11 10 5 -1 -4 -4 -3 -3 -4 -5 -7 -11 -15 -17 -17 -15 -14 -15 -16 -17 -18 -17 -17 -16 -18 -21 -22 -19 -15 -11 -10 -12 -14 -16 -16 -18 -19 -20 -21 -23 -25 -26 -25 -23 -22 -21 -16 -13 -10 -6 -4 -3 -4 -6 -11 -17 -21 -24 -26 -29 -30 -30 -28 -26 -27 -26 -26 -27 -27 -29 -28 -30 -31 -32 -30 -27 -25 -24 -25 -25 -23 -20 -18 -18 -21 -23 -22 -21 -20 -17 -15 -13 -10 -8 -10 -13 -15 -16 -18 -22 -25 -28 -29 -29 -29 -26 -21 -16 -8 -3 -0 1 1 -2 -5 -7 -8 -10 -13 -18 -24 -28 -29 -28 -28 -30 -33 -33 -33 -31 -29 -27 -19 -16 -15 -18 -24 -29 -33 -36 -37 -35 -31 -28 -25 -23 -22 -23 -22 -21 -20 -19 -18 -16 -15 -14 -14 -14 -14 -14 -12 -15 -17 -18 -18 -16 -18 -22 -28 -32 -33 -31 -29 -27 -25 -25 -26 -27 -29 -31 -33 -35 -37 -38 -37 -35 -32 -30 -31 -37 -46 -52 -54 -51 -43 -31 -22 -19 -24 -31 -39 -46 -51 -55 -57 -60 -60 -59 -56 -55 -53 -51 -49 -48 -49 -49 -49 -49 -47 -43 -38 -34 -31 -30 -29 -27 -27 -29 -36 -40 -41 -38 -34 -31 -30 -28 -27 -25 -23 -21 -21 -22 -27 -32 -38 -44 -47 -45 -44 -45 -45 -43 -39 -36 -34 -33 -33 -33 -10 -10 -10 -10 -10 -9 -9 -9 -9 -8 -7 -6 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -5 -6 -6 -6 -6 -5 -4 -3 -2 -1 -2 -3 -4 -5 -5 -6 -7 -9 -10 -11 -11 -11 -11 -10 -10 -10 -10 -11 -12 -13 -14 -16 -18 -16 -14 -11 -10 -11 -11 -11 -11 -12 -12 -13 -15 -16 -17 -18 -20 -20 -20 -21 -22 -22 -21 -19 -16 -16 -16 -15 -12 -12 -12 -12 -12 -12 -10 -8 -7 -6 -6 -7 -8 -10 -12 -15 -18 -20 -22 -23 -24 -24 -25 -25 -26 -26 -27 -26 -24 -21 -17 -14 -12 -10 -8 -4 -1 2 3 3 2 0 -1 -2 -4 -7 -9 -11 -12 -13 -15 -15 -15 -17 -18 -19 -20 -21 -21 -21 -19 -16 -12 -7 -2 2 5 7 9 8 8 9 9 9 6 2 -0 1 2 1 1 1 -1 -5 -10 -11 -11 -9 -8 -9 -10 -11 -13 -13 -12 -11 -11 -13 -17 -16 -14 -12 -11 -11 -12 -13 -14 -16 -16 -16 -17 -19 -21 -24 -25 -25 -25 -23 -21 -19 -17 -13 -6 -5 -8 -12 -16 -17 -18 -20 -23 -25 -28 -30 -30 -29 -29 -28 -28 -28 -28 -30 -29 -30 -31 -32 -30 -28 -25 -24 -24 -26 -26 -24 -20 -18 -17 -18 -19 -20 -22 -21 -19 -16 -13 -11 -12 -13 -13 -13 -14 -18 -21 -23 -26 -27 -28 -28 -27 -25 -18 -11 -6 -2 1 1 -1 -4 -7 -8 -9 -13 -18 -24 -28 -28 -28 -29 -29 -32 -33 -33 -32 -31 -24 -19 -16 -16 -20 -25 -30 -35 -37 -37 -34 -32 -28 -24 -25 -24 -24 -23 -23 -21 -20 -19 -17 -15 -15 -15 -15 -15 -14 -14 -15 -17 -18 -17 -17 -19 -23 -29 -32 -33 -31 -29 -28 -27 -26 -26 -27 -29 -30 -33 -36 -39 -40 -37 -35 -32 -30 -33 -41 -48 -53 -51 -47 -39 -29 -21 -20 -26 -34 -43 -50 -54 -57 -60 -62 -62 -59 -57 -54 -51 -49 -48 -48 -48 -49 -49 -49 -46 -42 -37 -32 -30 -29 -28 -28 -29 -34 -39 -42 -41 -36 -33 -31 -30 -28 -26 -24 -22 -21 -21 -25 -30 -36 -41 -44 -44 -43 -43 -44 -44 -41 -38 -36 -34 -33 -33 -9 -9 -9 -10 -10 -9 -8 -8 -7 -6 -5 -5 -4 -4 -5 -5 -5 -6 -6 -7 -7 -7 -7 -6 -6 -4 -3 -3 -2 -2 -1 -2 -3 -5 -7 -8 -8 -9 -9 -9 -10 -10 -11 -10 -9 -9 -9 -9 -10 -12 -16 -18 -17 -15 -14 -15 -15 -14 -11 -11 -11 -11 -11 -12 -13 -14 -16 -17 -16 -16 -17 -19 -21 -23 -22 -22 -21 -19 -16 -14 -13 -13 -12 -11 -11 -12 -12 -12 -10 -9 -8 -7 -7 -6 -7 -8 -9 -12 -13 -14 -16 -19 -21 -22 -22 -22 -22 -22 -23 -24 -24 -25 -23 -21 -20 -18 -15 -12 -7 -3 1 4 4 4 2 1 -1 -4 -6 -7 -8 -9 -10 -11 -12 -13 -15 -16 -18 -19 -20 -22 -23 -23 -22 -19 -16 -11 -7 -2 1 1 1 1 2 3 1 -0 -1 0 2 3 4 4 3 0 -3 -4 -4 -4 -5 -6 -6 -7 -8 -9 -8 -7 -6 -7 -9 -11 -13 -15 -15 -13 -12 -12 -12 -13 -13 -13 -14 -16 -18 -20 -23 -24 -24 -24 -24 -23 -22 -19 -10 -9 -10 -12 -17 -17 -16 -16 -17 -17 -19 -22 -26 -29 -32 -31 -31 -30 -29 -31 -30 -30 -32 -32 -30 -27 -25 -23 -22 -24 -26 -26 -25 -24 -19 -16 -16 -15 -18 -20 -21 -20 -18 -17 -15 -14 -14 -13 -13 -13 -14 -16 -20 -23 -25 -26 -27 -28 -24 -19 -13 -8 -3 -0 -0 -2 -5 -7 -7 -10 -14 -20 -25 -28 -29 -30 -28 -31 -32 -33 -33 -31 -28 -24 -19 -17 -18 -21 -27 -32 -36 -37 -36 -35 -32 -27 -27 -26 -25 -24 -25 -23 -22 -21 -20 -18 -18 -17 -16 -17 -17 -15 -14 -15 -18 -18 -16 -16 -19 -25 -30 -33 -33 -32 -31 -29 -28 -27 -27 -27 -28 -31 -34 -37 -40 -39 -37 -35 -32 -32 -36 -43 -49 -52 -48 -44 -37 -28 -19 -22 -29 -38 -48 -54 -58 -61 -63 -64 -62 -59 -56 -52 -49 -48 -47 -48 -48 -49 -50 -49 -46 -41 -35 -31 -29 -29 -29 -29 -32 -37 -41 -42 -39 -35 -33 -31 -30 -27 -25 -23 -22 -21 -23 -28 -33 -37 -40 -42 -43 -43 -43 -44 -43 -40 -37 -35 -34 -33 -9 -9 -9 -9 -8 -8 -7 -6 -5 -5 -4 -5 -5 -6 -6 -7 -7 -8 -9 -9 -8 -7 -6 -5 -4 -2 -2 -2 -2 -3 -4 -5 -6 -8 -10 -10 -9 -8 -8 -7 -8 -9 -9 -9 -8 -8 -9 -10 -11 -12 -15 -17 -15 -12 -10 -11 -12 -11 -10 -10 -10 -10 -10 -11 -12 -12 -13 -13 -12 -11 -11 -12 -14 -15 -16 -16 -16 -15 -12 -10 -9 -8 -7 -7 -8 -10 -11 -10 -7 -6 -7 -8 -7 -6 -5 -5 -6 -7 -9 -11 -12 -14 -17 -18 -18 -18 -18 -18 -18 -19 -21 -22 -23 -24 -24 -23 -22 -19 -16 -12 -7 -4 -0 2 3 2 0 -1 -2 -3 -4 -4 -6 -7 -8 -9 -10 -11 -13 -14 -16 -19 -21 -24 -25 -24 -22 -19 -15 -12 -8 -6 -6 -6 -7 -6 -6 -6 -6 -4 -1 3 5 5 4 1 -1 -1 -1 -2 -3 -4 -4 -3 -3 -4 -4 -3 -3 -5 -5 -7 -9 -12 -15 -13 -13 -12 -9 -10 -11 -12 -13 -15 -14 -16 -18 -19 -21 -23 -24 -24 -23 -23 -17 -14 -10 -6 -12 -14 -14 -12 -9 -6 -9 -14 -20 -25 -28 -30 -32 -31 -30 -31 -30 -30 -31 -32 -30 -26 -24 -22 -21 -22 -23 -25 -26 -28 -24 -21 -17 -13 -13 -16 -19 -20 -21 -21 -19 -18 -18 -17 -15 -14 -13 -13 -14 -16 -18 -20 -24 -27 -27 -24 -20 -15 -9 -6 -3 -1 -2 -4 -6 -8 -12 -15 -20 -24 -27 -30 -28 -29 -30 -31 -33 -33 -32 -29 -24 -19 -17 -18 -22 -28 -34 -38 -38 -39 -37 -32 -30 -29 -27 -26 -26 -25 -24 -23 -22 -21 -20 -19 -17 -17 -19 -17 -15 -14 -18 -18 -17 -15 -15 -19 -26 -31 -34 -35 -34 -32 -30 -29 -28 -27 -27 -28 -31 -34 -38 -40 -40 -38 -35 -33 -34 -38 -45 -50 -48 -46 -43 -37 -25 -21 -24 -33 -44 -53 -58 -61 -64 -66 -65 -62 -57 -52 -49 -48 -47 -47 -48 -50 -51 -52 -49 -44 -37 -33 -30 -29 -29 -30 -32 -35 -40 -43 -41 -38 -35 -32 -31 -29 -27 -25 -23 -22 -23 -26 -30 -32 -37 -41 -44 -44 -44 -45 -45 -42 -38 -36 -34 -33 -8 -7 -7 -6 -6 -6 -6 -5 -5 -5 -6 -7 -7 -8 -9 -10 -10 -10 -10 -9 -7 -5 -4 -3 -2 -2 -3 -4 -5 -7 -8 -9 -10 -10 -10 -9 -7 -6 -5 -6 -7 -7 -8 -9 -10 -10 -10 -10 -11 -11 -12 -13 -12 -11 -9 -9 -8 -8 -8 -8 -8 -7 -7 -8 -7 -7 -7 -7 -6 -5 -5 -6 -7 -8 -9 -8 -8 -7 -6 -6 -5 -4 -3 -2 -3 -5 -7 -8 -7 -6 -5 -5 -5 -3 -2 -1 -2 -3 -4 -6 -8 -9 -11 -13 -14 -15 -15 -14 -14 -14 -16 -18 -20 -21 -23 -24 -24 -24 -22 -19 -15 -12 -8 -6 -3 -1 -0 -0 1 1 0 -0 -3 -5 -6 -6 -6 -6 -7 -8 -9 -11 -16 -19 -21 -24 -24 -23 -21 -18 -14 -11 -8 -8 -9 -11 -12 -11 -10 -8 -5 -1 2 3 2 -1 -2 -2 -1 -1 -0 -1 -0 -0 -0 -1 -1 -1 -1 -2 -1 -2 -5 -7 -11 -12 -14 -13 -10 -8 -8 -8 -10 -12 -12 -15 -16 -17 -18 -21 -22 -22 -22 -23 -22 -22 -17 -8 -7 -10 -11 -9 -4 1 -1 -6 -11 -16 -22 -27 -31 -33 -33 -32 -31 -31 -32 -32 -28 -25 -23 -22 -22 -22 -22 -23 -25 -28 -27 -27 -24 -19 -14 -13 -14 -16 -20 -21 -22 -22 -22 -21 -18 -16 -14 -13 -12 -12 -12 -13 -17 -21 -23 -24 -23 -21 -16 -12 -7 -3 -2 -3 -5 -7 -9 -10 -14 -18 -23 -27 -28 -28 -29 -31 -33 -33 -32 -31 -28 -24 -20 -17 -18 -23 -30 -36 -40 -41 -41 -38 -35 -33 -31 -28 -29 -27 -26 -25 -24 -23 -22 -20 -19 -18 -19 -19 -16 -14 -16 -19 -19 -17 -14 -14 -20 -27 -33 -36 -37 -36 -34 -32 -31 -29 -28 -27 -28 -30 -35 -39 -41 -41 -38 -35 -34 -35 -40 -47 -48 -46 -45 -44 -36 -27 -24 -28 -38 -49 -57 -62 -65 -67 -68 -65 -61 -55 -50 -48 -48 -48 -48 -49 -52 -53 -51 -47 -41 -35 -32 -30 -30 -31 -32 -34 -38 -42 -43 -41 -37 -34 -32 -30 -28 -26 -24 -24 -23 -25 -28 -30 -34 -41 -45 -46 -45 -46 -46 -44 -40 -37 -34 -33 -7 -6 -5 -4 -4 -5 -5 -5 -6 -8 -9 -10 -10 -11 -10 -10 -10 -9 -8 -6 -4 -2 -2 -2 -3 -5 -6 -8 -9 -9 -10 -10 -10 -9 -8 -7 -6 -5 -5 -6 -7 -8 -8 -9 -9 -9 -9 -10 -10 -11 -11 -10 -9 -8 -8 -7 -6 -6 -6 -6 -5 -4 -4 -4 -3 -3 -2 -2 -1 -1 -2 -2 -3 -4 -5 -5 -4 -4 -4 -4 -4 -3 -2 -1 -1 -2 -4 -6 -7 -7 -7 -6 -4 -0 1 2 2 1 -0 -2 -3 -3 -6 -8 -9 -10 -10 -11 -10 -10 -11 -13 -15 -17 -19 -21 -22 -24 -24 -22 -19 -16 -14 -12 -10 -8 -6 -3 0 2 2 2 -0 -2 -3 -4 -4 -4 -4 -4 -5 -5 -8 -11 -14 -18 -20 -21 -21 -21 -19 -16 -12 -8 -6 -8 -11 -13 -14 -14 -13 -10 -7 -4 -3 -2 -3 -4 -4 -2 2 3 3 2 1 0 0 0 -0 -1 -1 -1 -1 -2 -6 -10 -13 -14 -11 -6 -6 -6 -7 -9 -9 -11 -12 -12 -14 -15 -18 -19 -19 -19 -22 -24 -23 -19 -14 -13 -11 -8 -4 1 2 1 -2 -7 -15 -22 -28 -31 -32 -32 -32 -32 -32 -31 -28 -26 -24 -22 -21 -20 -20 -21 -23 -24 -27 -28 -27 -25 -19 -15 -12 -12 -15 -19 -21 -22 -23 -22 -21 -18 -16 -14 -13 -12 -11 -11 -12 -15 -17 -20 -22 -22 -20 -18 -14 -9 -5 -3 -4 -5 -6 -6 -8 -12 -16 -22 -25 -27 -29 -29 -30 -31 -31 -31 -30 -27 -24 -21 -18 -19 -25 -31 -37 -41 -43 -42 -39 -37 -35 -31 -31 -30 -28 -27 -25 -24 -23 -22 -21 -21 -21 -21 -18 -15 -15 -19 -21 -20 -16 -13 -15 -22 -29 -35 -38 -38 -37 -35 -34 -31 -29 -27 -26 -28 -31 -36 -40 -42 -41 -38 -35 -34 -36 -43 -48 -48 -46 -44 -43 -35 -27 -25 -31 -43 -54 -61 -65 -68 -70 -68 -64 -57 -51 -49 -48 -47 -47 -49 -52 -53 -53 -49 -44 -39 -34 -31 -30 -31 -32 -33 -36 -41 -43 -42 -39 -35 -32 -30 -28 -26 -25 -24 -23 -23 -25 -27 -31 -38 -44 -46 -46 -46 -47 -46 -42 -38 -35 -33 -7 -5 -5 -5 -5 -6 -7 -8 -9 -11 -12 -12 -11 -10 -10 -9 -8 -7 -5 -3 -2 -2 -3 -4 -6 -7 -8 -9 -9 -9 -8 -8 -8 -7 -7 -7 -7 -7 -7 -7 -8 -8 -8 -8 -8 -7 -7 -7 -7 -8 -10 -8 -7 -6 -6 -5 -4 -4 -3 -3 -3 -2 -2 -2 -2 -2 -1 -0 -0 -1 -1 -2 -3 -4 -5 -6 -6 -6 -6 -6 -6 -6 -5 -4 -4 -4 -5 -6 -8 -10 -11 -10 -6 -1 2 3 3 3 3 2 1 0 -1 -3 -4 -5 -6 -7 -6 -6 -7 -8 -9 -12 -14 -16 -18 -20 -21 -21 -19 -18 -16 -15 -14 -13 -11 -7 -4 -1 1 2 1 0 -1 -3 -2 -2 -1 -1 -1 -0 -1 -3 -5 -10 -13 -16 -18 -19 -19 -18 -15 -10 -5 -2 -4 -7 -11 -13 -14 -13 -12 -10 -7 -6 -7 -7 -7 -4 -1 3 4 4 2 2 1 0 -1 -1 -2 -1 0 0 -1 -5 -10 -12 -11 -5 -5 -5 -5 -6 -6 -8 -9 -10 -12 -13 -15 -16 -15 -15 -19 -22 -23 -23 -22 -21 -17 -11 -6 -2 0 2 2 -0 -7 -15 -21 -25 -27 -30 -32 -32 -32 -30 -28 -26 -24 -22 -20 -19 -19 -20 -22 -23 -26 -27 -26 -27 -26 -23 -18 -13 -13 -16 -17 -19 -20 -21 -21 -20 -19 -17 -16 -14 -12 -10 -9 -9 -12 -15 -18 -20 -20 -20 -18 -15 -11 -6 -4 -4 -5 -4 -5 -6 -10 -15 -20 -24 -26 -27 -28 -30 -31 -31 -31 -30 -27 -25 -21 -18 -20 -26 -33 -40 -43 -43 -42 -40 -38 -34 -34 -32 -30 -28 -26 -25 -24 -23 -22 -22 -23 -22 -21 -17 -15 -18 -21 -22 -19 -14 -13 -16 -23 -31 -36 -38 -38 -37 -36 -33 -31 -29 -27 -26 -28 -32 -37 -42 -43 -41 -38 -36 -35 -40 -46 -49 -48 -44 -44 -41 -34 -25 -25 -35 -48 -58 -65 -69 -71 -70 -66 -58 -52 -49 -47 -47 -47 -49 -52 -53 -53 -51 -48 -43 -37 -33 -31 -31 -32 -33 -34 -38 -42 -43 -41 -37 -33 -30 -28 -26 -25 -24 -23 -22 -23 -26 -29 -34 -39 -43 -44 -46 -47 -47 -44 -39 -35 -33 -7 -7 -7 -8 -9 -9 -9 -9 -9 -10 -10 -10 -9 -8 -7 -6 -5 -3 -2 -2 -2 -4 -5 -7 -7 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -7 -7 -8 -8 -7 -6 -5 -4 -4 -5 -6 -7 -7 -7 -6 -5 -4 -4 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -3 -4 -5 -6 -7 -9 -10 -10 -9 -9 -9 -9 -8 -7 -7 -8 -8 -9 -11 -13 -15 -14 -10 -4 -1 1 3 3 3 3 3 3 3 2 1 -0 -1 -2 -2 -3 -3 -4 -5 -7 -8 -9 -10 -12 -14 -16 -17 -16 -15 -15 -15 -15 -13 -11 -8 -4 -1 1 2 2 1 -0 -1 -1 -1 -0 0 2 2 2 1 -3 -6 -10 -12 -15 -17 -18 -17 -14 -10 -6 -3 -2 -3 -4 -6 -7 -9 -9 -9 -9 -9 -8 -7 -3 2 4 4 3 2 2 2 2 0 -0 -2 -2 -1 -1 1 -1 -4 -8 -8 -5 -4 -4 -3 -4 -4 -5 -5 -6 -9 -10 -12 -12 -11 -12 -15 -17 -19 -21 -22 -24 -24 -21 -16 -11 -6 -1 2 3 -1 -5 -10 -14 -19 -24 -29 -33 -33 -30 -28 -26 -24 -23 -22 -21 -20 -20 -20 -21 -24 -24 -24 -25 -26 -25 -23 -19 -15 -13 -13 -14 -16 -16 -18 -19 -19 -20 -19 -18 -15 -12 -10 -8 -9 -10 -13 -16 -18 -19 -19 -18 -16 -12 -8 -6 -4 -4 -4 -4 -6 -8 -13 -18 -23 -25 -27 -29 -30 -31 -31 -31 -29 -27 -24 -20 -18 -21 -27 -34 -39 -42 -42 -42 -41 -38 -37 -35 -32 -30 -28 -26 -25 -24 -23 -24 -23 -23 -22 -19 -15 -17 -21 -24 -22 -17 -13 -12 -16 -23 -31 -36 -38 -39 -38 -36 -34 -32 -29 -27 -27 -29 -33 -39 -44 -44 -42 -38 -35 -38 -44 -49 -50 -46 -43 -42 -38 -29 -23 -28 -39 -53 -63 -68 -72 -72 -68 -60 -54 -50 -48 -46 -46 -48 -50 -53 -54 -54 -51 -47 -41 -35 -32 -31 -31 -33 -34 -36 -40 -43 -43 -40 -34 -30 -27 -26 -26 -25 -24 -23 -22 -25 -27 -30 -34 -40 -43 -46 -48 -48 -45 -41 -36 -34 -9 -9 -9 -10 -10 -11 -10 -9 -8 -7 -7 -7 -7 -6 -5 -4 -3 -2 -2 -3 -5 -6 -8 -8 -8 -7 -7 -7 -8 -8 -9 -10 -10 -11 -10 -10 -9 -8 -7 -7 -6 -6 -6 -6 -5 -4 -4 -4 -4 -5 -6 -7 -9 -9 -7 -5 -5 -5 -5 -3 -3 -3 -4 -3 -3 -3 -3 -3 -3 -4 -5 -5 -6 -7 -8 -9 -10 -10 -9 -9 -9 -9 -9 -8 -8 -8 -8 -9 -11 -14 -16 -15 -12 -9 -6 -3 -1 1 1 3 4 4 6 6 5 4 3 3 2 1 1 0 -1 -2 -3 -3 -2 -4 -7 -10 -12 -12 -12 -12 -12 -13 -12 -11 -9 -7 -5 -2 0 2 3 2 1 -1 -2 -1 -1 1 3 3 3 1 -1 -4 -6 -8 -11 -13 -14 -15 -14 -11 -7 -4 -2 -1 -1 -2 -4 -5 -7 -8 -9 -9 -9 -9 -4 -1 2 4 5 6 6 5 3 1 -1 -3 -5 -5 -2 1 1 -2 -4 -4 -4 -4 -2 -2 -2 -2 -2 -2 -4 -6 -7 -7 -7 -9 -11 -14 -16 -18 -20 -22 -24 -25 -21 -18 -13 -8 -3 1 3 2 -1 -6 -10 -17 -25 -30 -32 -29 -28 -26 -25 -24 -23 -22 -21 -20 -20 -21 -23 -23 -22 -23 -24 -25 -26 -24 -21 -17 -15 -14 -14 -15 -16 -17 -18 -20 -21 -21 -19 -16 -13 -11 -9 -9 -10 -12 -14 -16 -18 -19 -18 -16 -13 -10 -7 -4 -2 -2 -3 -4 -8 -14 -19 -23 -25 -27 -28 -30 -30 -31 -29 -28 -26 -23 -20 -19 -22 -27 -33 -38 -41 -43 -43 -40 -39 -37 -34 -31 -29 -27 -26 -25 -24 -24 -23 -22 -22 -20 -16 -16 -20 -25 -24 -20 -16 -12 -11 -15 -23 -31 -36 -39 -39 -38 -37 -35 -32 -30 -28 -27 -30 -36 -42 -45 -45 -41 -38 -38 -42 -48 -52 -48 -44 -41 -38 -33 -28 -28 -35 -47 -59 -67 -71 -72 -70 -64 -58 -52 -49 -46 -45 -47 -49 -52 -54 -55 -54 -50 -44 -37 -33 -31 -31 -33 -33 -35 -38 -42 -45 -42 -37 -32 -28 -26 -26 -26 -25 -24 -23 -24 -26 -29 -31 -37 -43 -48 -49 -48 -47 -43 -38 -35 -11 -11 -10 -11 -11 -11 -10 -9 -8 -7 -6 -6 -6 -6 -5 -4 -3 -3 -4 -6 -8 -9 -9 -8 -8 -8 -8 -9 -10 -10 -11 -12 -12 -12 -11 -10 -8 -7 -6 -6 -6 -6 -6 -5 -5 -5 -4 -4 -5 -7 -9 -10 -12 -13 -11 -7 -6 -7 -7 -5 -4 -4 -5 -4 -4 -3 -3 -3 -3 -4 -4 -5 -5 -5 -5 -7 -7 -8 -7 -7 -7 -6 -6 -6 -5 -4 -4 -5 -7 -11 -13 -14 -13 -12 -10 -9 -7 -5 -4 -1 1 3 6 8 9 8 7 6 4 4 5 5 2 1 1 1 2 2 -0 -3 -5 -7 -7 -8 -8 -9 -9 -9 -8 -8 -7 -6 -3 -0 2 2 1 -1 -2 -3 -2 -1 1 1 2 2 1 -0 -1 -3 -4 -6 -8 -10 -12 -13 -12 -9 -6 -3 -1 -0 -0 -1 -2 -4 -5 -7 -8 -9 -8 -5 -2 1 3 4 4 3 4 4 3 1 -3 -7 -6 -3 -1 0 -1 -2 -4 -4 -3 -1 0 1 1 1 0 -1 -2 -3 -4 -6 -8 -10 -12 -14 -17 -20 -23 -25 -25 -23 -19 -15 -11 -7 -4 -2 -2 -4 -6 -10 -16 -22 -27 -28 -28 -28 -27 -25 -24 -23 -22 -22 -21 -22 -22 -22 -22 -22 -22 -23 -24 -26 -23 -21 -19 -17 -16 -15 -15 -15 -17 -17 -19 -20 -20 -19 -16 -14 -13 -11 -10 -9 -10 -12 -15 -17 -18 -18 -16 -14 -11 -7 -4 -2 -1 -1 -3 -7 -12 -17 -22 -24 -26 -28 -30 -30 -30 -29 -28 -26 -23 -20 -19 -20 -26 -33 -39 -42 -44 -42 -40 -37 -34 -32 -30 -29 -27 -25 -25 -24 -22 -22 -23 -22 -18 -16 -19 -23 -25 -23 -18 -14 -10 -10 -16 -23 -31 -37 -39 -39 -39 -38 -35 -32 -29 -28 -29 -33 -39 -44 -46 -45 -41 -39 -40 -45 -51 -51 -46 -41 -37 -35 -32 -30 -33 -42 -56 -66 -72 -73 -71 -66 -61 -56 -51 -47 -45 -45 -47 -50 -52 -54 -54 -52 -48 -41 -35 -31 -30 -32 -33 -33 -36 -40 -45 -44 -40 -35 -30 -27 -27 -27 -27 -26 -24 -24 -25 -27 -29 -35 -43 -49 -51 -49 -48 -45 -41 -36 -14 -13 -11 -11 -12 -12 -12 -11 -10 -9 -8 -7 -7 -6 -5 -5 -4 -6 -7 -9 -10 -10 -10 -10 -10 -10 -11 -11 -12 -12 -12 -12 -12 -11 -10 -9 -8 -7 -7 -7 -8 -7 -6 -6 -5 -5 -5 -5 -6 -9 -11 -11 -10 -10 -10 -8 -7 -6 -6 -5 -4 -5 -5 -4 -3 -2 -2 -2 -2 -2 -3 -3 -4 -4 -4 -5 -6 -7 -6 -6 -5 -5 -4 -3 -2 -1 0 0 -2 -6 -8 -10 -11 -12 -12 -10 -9 -7 -6 -4 -2 1 3 6 9 10 10 10 10 10 9 8 5 5 4 3 3 3 5 5 4 1 -2 -3 -3 -2 -3 -4 -4 -5 -6 -7 -6 -5 -3 -1 0 0 -1 -2 -3 -3 -3 -2 -1 1 1 1 0 0 0 -0 -1 -3 -6 -9 -11 -12 -11 -8 -5 -3 -1 0 0 -0 -2 -3 -5 -6 -6 -5 -4 -2 -1 1 3 5 6 7 7 5 3 -1 -4 -5 -4 -1 0 -0 -2 -4 -5 -2 0 2 3 3 4 4 3 1 0 -3 -4 -5 -8 -9 -13 -17 -20 -23 -24 -23 -21 -18 -16 -14 -11 -7 -5 -3 -4 -6 -10 -13 -16 -20 -23 -25 -27 -26 -27 -26 -25 -24 -23 -22 -21 -20 -21 -20 -21 -22 -23 -24 -23 -23 -22 -21 -19 -17 -16 -15 -15 -15 -17 -18 -19 -19 -18 -17 -16 -14 -12 -10 -10 -10 -11 -13 -16 -17 -17 -16 -14 -10 -7 -4 -1 0 0 -2 -5 -9 -16 -19 -22 -25 -27 -29 -29 -29 -29 -28 -26 -23 -20 -17 -21 -27 -33 -37 -40 -39 -38 -36 -35 -35 -33 -31 -29 -27 -26 -25 -23 -23 -24 -24 -22 -19 -18 -20 -24 -24 -21 -18 -13 -11 -11 -15 -24 -33 -37 -40 -41 -41 -39 -36 -32 -30 -29 -30 -35 -40 -46 -47 -45 -42 -40 -41 -48 -51 -49 -44 -37 -35 -33 -31 -31 -36 -50 -62 -69 -72 -71 -68 -64 -59 -54 -49 -46 -44 -45 -47 -51 -53 -54 -53 -51 -45 -38 -33 -30 -31 -32 -33 -34 -38 -44 -45 -43 -38 -32 -29 -28 -27 -27 -27 -25 -24 -24 -26 -28 -33 -41 -48 -51 -50 -49 -46 -43 -39 -15 -14 -13 -12 -13 -13 -14 -14 -13 -13 -11 -10 -8 -7 -7 -7 -7 -9 -10 -10 -11 -11 -11 -11 -12 -12 -12 -12 -12 -12 -11 -10 -9 -9 -8 -8 -8 -7 -8 -8 -8 -7 -7 -6 -6 -6 -6 -7 -9 -11 -12 -12 -12 -11 -9 -8 -7 -6 -4 -4 -4 -4 -4 -4 -3 -2 -2 -2 -2 -2 -3 -3 -3 -3 -4 -4 -5 -5 -5 -5 -4 -4 -3 -1 1 3 4 4 2 -2 -4 -6 -8 -10 -10 -9 -7 -6 -5 -5 -3 -1 1 3 4 5 6 7 8 8 8 7 6 6 5 4 3 4 4 5 7 6 3 1 1 2 3 2 1 0 -1 -2 -4 -5 -6 -5 -3 -2 -3 -4 -6 -7 -6 -5 -3 -2 -1 -0 0 1 1 2 2 1 -1 -3 -6 -9 -11 -11 -9 -7 -4 -2 -0 0 -0 -1 -1 -2 -2 -3 -3 -3 -3 -2 1 3 4 6 8 8 8 6 1 -3 -4 -4 -2 -0 -1 -2 -3 -1 -1 1 3 3 4 6 7 6 4 1 0 -1 -4 -5 -9 -12 -15 -19 -21 -22 -21 -19 -17 -16 -15 -13 -10 -7 -5 -5 -5 -5 -8 -13 -20 -25 -28 -27 -27 -26 -26 -25 -24 -22 -20 -19 -19 -18 -19 -21 -21 -22 -22 -23 -24 -23 -23 -21 -19 -16 -15 -15 -16 -16 -16 -17 -18 -19 -20 -19 -17 -15 -13 -11 -10 -10 -13 -15 -16 -16 -15 -13 -10 -7 -4 -0 2 2 0 -3 -9 -13 -18 -22 -23 -26 -27 -28 -29 -29 -28 -26 -23 -17 -18 -22 -27 -31 -34 -35 -36 -36 -35 -35 -34 -33 -32 -30 -28 -26 -25 -25 -25 -26 -26 -23 -20 -17 -22 -23 -23 -20 -17 -14 -11 -10 -15 -25 -33 -39 -42 -43 -43 -40 -36 -33 -30 -30 -32 -36 -43 -48 -47 -44 -41 -39 -44 -50 -51 -48 -39 -34 -33 -34 -33 -33 -44 -55 -65 -70 -69 -68 -65 -62 -57 -52 -47 -44 -43 -45 -48 -51 -53 -54 -52 -48 -41 -35 -31 -30 -31 -32 -33 -35 -41 -44 -44 -41 -36 -32 -29 -28 -27 -26 -25 -25 -24 -24 -26 -31 -37 -44 -50 -51 -50 -48 -45 -41 -16 -15 -14 -13 -13 -13 -14 -15 -14 -14 -12 -10 -9 -8 -8 -9 -10 -11 -11 -11 -11 -12 -13 -13 -12 -12 -11 -11 -10 -9 -8 -7 -7 -7 -7 -7 -7 -7 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -11 -13 -14 -14 -14 -15 -15 -12 -9 -6 -4 -4 -4 -4 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -3 -2 -1 0 2 4 6 8 8 6 3 0 -1 -2 -3 -5 -5 -3 -1 1 1 -0 0 2 4 2 1 0 0 1 2 4 4 4 4 5 5 4 4 4 4 5 7 8 7 5 4 5 6 6 6 6 6 4 1 -2 -4 -5 -5 -4 -4 -5 -8 -10 -10 -9 -8 -6 -5 -4 -2 -1 1 2 4 4 4 2 -1 -3 -6 -8 -10 -10 -9 -7 -5 -2 -1 0 1 0 -0 -0 -1 -2 -3 -3 -2 -1 0 3 5 7 9 10 6 2 -1 -2 -2 -1 -1 -1 -2 -1 -1 -1 1 4 6 8 9 8 8 4 4 3 0 -3 -4 -7 -11 -15 -17 -19 -19 -18 -17 -16 -16 -15 -14 -13 -10 -7 -5 -4 -4 -8 -13 -18 -21 -23 -24 -24 -24 -24 -24 -22 -21 -20 -19 -18 -18 -19 -20 -20 -20 -21 -23 -24 -25 -25 -22 -20 -17 -15 -15 -14 -14 -15 -17 -18 -20 -21 -20 -19 -18 -15 -12 -11 -12 -13 -14 -16 -15 -15 -13 -10 -7 -3 0 3 4 3 -2 -7 -12 -16 -18 -21 -24 -26 -28 -29 -29 -29 -27 -21 -18 -18 -20 -25 -28 -31 -34 -35 -34 -34 -34 -34 -34 -33 -31 -28 -27 -27 -27 -26 -27 -27 -23 -17 -19 -22 -23 -22 -20 -17 -13 -9 -8 -17 -27 -36 -41 -46 -46 -45 -41 -36 -33 -31 -31 -33 -39 -46 -48 -47 -43 -40 -42 -47 -51 -50 -41 -34 -34 -36 -36 -33 -39 -49 -60 -67 -68 -66 -64 -63 -60 -56 -50 -45 -42 -43 -46 -50 -53 -54 -54 -50 -45 -38 -32 -30 -30 -31 -32 -33 -37 -42 -44 -43 -39 -35 -31 -29 -27 -25 -24 -24 -24 -23 -25 -28 -33 -40 -47 -50 -50 -49 -46 -43 -15 -14 -14 -13 -12 -12 -12 -12 -12 -11 -10 -9 -8 -9 -10 -11 -12 -12 -12 -11 -11 -12 -12 -12 -11 -10 -9 -8 -7 -7 -6 -6 -6 -6 -6 -7 -7 -7 -8 -9 -10 -9 -9 -9 -9 -9 -8 -8 -9 -11 -13 -13 -13 -13 -13 -11 -9 -6 -4 -3 -3 -4 -3 -2 -1 -1 -1 -0 -0 -0 -0 -0 0 1 1 1 1 1 2 3 4 6 8 10 11 12 11 9 4 2 1 1 -0 1 2 5 7 9 10 9 8 8 7 4 1 -1 -2 -2 -0 2 3 2 1 1 2 3 3 3 3 3 4 5 6 5 5 6 7 8 8 9 9 9 7 4 1 -2 -2 -4 -4 -5 -7 -9 -10 -11 -11 -11 -10 -9 -8 -6 -2 1 3 4 5 4 3 2 1 -2 -7 -11 -13 -12 -9 -5 -3 -1 1 2 2 2 1 -0 -1 -3 -3 -3 -3 -1 1 4 7 8 7 5 3 1 0 -0 -0 -0 -0 -1 -0 -1 -0 3 6 8 9 10 11 9 8 6 4 2 0 -2 -7 -11 -14 -16 -17 -17 -15 -15 -15 -15 -15 -14 -14 -11 -8 -7 -5 -5 -8 -11 -13 -17 -20 -22 -23 -23 -22 -20 -19 -18 -18 -18 -17 -18 -19 -20 -20 -21 -22 -23 -25 -26 -25 -24 -21 -18 -15 -14 -13 -13 -15 -17 -18 -20 -21 -21 -21 -20 -17 -14 -13 -12 -13 -14 -15 -15 -14 -13 -11 -7 -4 0 4 6 3 -1 -6 -12 -14 -17 -19 -22 -26 -26 -29 -30 -29 -24 -20 -16 -15 -17 -21 -26 -30 -33 -33 -34 -35 -36 -37 -36 -35 -33 -30 -28 -27 -27 -27 -28 -27 -19 -17 -20 -23 -24 -22 -20 -15 -10 -5 -10 -20 -30 -38 -45 -48 -48 -45 -41 -36 -32 -31 -31 -35 -42 -47 -48 -45 -42 -42 -45 -50 -52 -45 -36 -34 -35 -36 -33 -35 -43 -55 -65 -66 -64 -63 -62 -61 -58 -53 -47 -42 -42 -44 -48 -51 -54 -54 -52 -48 -42 -35 -31 -29 -30 -32 -33 -35 -39 -43 -45 -42 -38 -34 -29 -26 -24 -24 -24 -24 -24 -24 -26 -29 -35 -42 -48 -50 -49 -47 -45 -13 -13 -12 -11 -10 -10 -9 -8 -8 -8 -9 -9 -10 -11 -11 -11 -11 -11 -11 -10 -10 -10 -10 -10 -9 -8 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -8 -9 -9 -9 -8 -8 -9 -9 -8 -7 -7 -7 -8 -9 -10 -9 -8 -8 -8 -7 -4 -2 -1 -2 -2 -1 -0 1 1 2 2 2 2 2 2 3 3 4 5 5 6 7 8 10 11 13 15 15 15 13 11 6 4 3 2 1 4 7 10 12 14 16 17 16 14 10 5 1 -1 -1 0 2 4 5 4 2 2 3 4 5 5 4 3 4 4 4 4 5 5 7 7 8 9 10 10 10 7 5 2 0 -1 -3 -4 -5 -6 -7 -8 -9 -11 -12 -12 -12 -10 -8 -4 -1 2 4 4 4 4 4 2 -2 -6 -8 -10 -10 -8 -6 -4 -1 0 2 2 3 2 1 -1 -2 -3 -3 -3 -1 0 2 3 4 4 4 4 3 2 2 2 2 1 1 0 -0 4 6 6 7 9 11 10 10 10 8 7 6 2 -1 -5 -9 -12 -14 -16 -14 -13 -14 -14 -13 -12 -14 -13 -11 -10 -9 -7 -6 -6 -6 -10 -13 -17 -20 -21 -20 -18 -16 -16 -15 -16 -17 -18 -20 -20 -20 -21 -22 -22 -24 -25 -26 -26 -25 -22 -19 -16 -14 -13 -14 -15 -17 -19 -20 -22 -23 -24 -22 -18 -16 -13 -12 -12 -13 -14 -15 -14 -13 -11 -8 -4 0 5 6 4 -0 -6 -8 -12 -15 -18 -22 -23 -27 -30 -29 -26 -22 -17 -13 -11 -15 -19 -25 -30 -31 -34 -34 -35 -37 -38 -38 -37 -34 -30 -28 -28 -27 -28 -28 -22 -18 -18 -22 -25 -24 -22 -19 -13 -7 -7 -13 -23 -33 -43 -48 -50 -49 -46 -39 -35 -32 -30 -32 -38 -44 -47 -47 -44 -42 -44 -47 -52 -48 -41 -36 -34 -35 -33 -34 -40 -50 -61 -64 -63 -62 -62 -62 -60 -55 -49 -42 -40 -41 -45 -50 -53 -54 -54 -51 -47 -40 -34 -30 -29 -31 -32 -34 -37 -43 -45 -44 -41 -36 -30 -27 -25 -23 -23 -24 -24 -24 -25 -27 -31 -38 -45 -49 -50 -47 -46 -11 -10 -10 -10 -9 -8 -8 -7 -8 -9 -10 -11 -12 -12 -12 -11 -11 -10 -10 -10 -9 -9 -8 -8 -7 -7 -6 -5 -6 -6 -7 -7 -6 -7 -7 -8 -9 -9 -9 -8 -6 -5 -5 -6 -7 -7 -7 -6 -6 -5 -7 -7 -6 -5 -5 -5 -4 -2 0 1 1 1 1 2 2 2 2 3 3 4 4 4 5 5 7 8 9 10 11 12 14 15 16 16 16 15 14 12 9 5 3 2 2 4 7 10 13 16 18 19 18 16 11 5 2 2 3 5 7 8 8 8 8 8 9 10 10 9 8 7 7 6 6 5 5 5 6 7 8 8 9 9 10 9 7 4 2 0 -1 -2 -2 -1 -1 -3 -5 -7 -9 -10 -11 -11 -10 -7 -4 -2 0 2 3 3 3 2 1 -1 -3 -4 -6 -6 -6 -5 -4 -1 1 2 3 3 3 2 0 -2 -2 -3 -3 -2 -2 -1 0 2 3 4 4 4 4 5 3 3 3 2 1 4 4 4 4 6 8 9 9 11 12 13 12 9 5 2 -2 -6 -9 -12 -13 -14 -14 -13 -11 -10 -11 -10 -10 -11 -11 -10 -8 -5 -3 -5 -8 -11 -14 -16 -16 -15 -14 -13 -13 -14 -16 -18 -20 -22 -23 -23 -23 -23 -24 -25 -25 -25 -26 -25 -23 -20 -16 -15 -14 -14 -15 -17 -19 -21 -23 -25 -24 -23 -21 -18 -15 -13 -13 -14 -14 -14 -14 -13 -11 -8 -5 -0 4 5 4 0 -3 -7 -11 -14 -18 -19 -23 -27 -28 -26 -24 -20 -15 -11 -12 -15 -21 -26 -29 -32 -33 -34 -37 -39 -39 -39 -38 -34 -31 -29 -29 -28 -29 -25 -19 -16 -17 -23 -24 -24 -22 -17 -12 -8 -10 -16 -27 -38 -46 -50 -52 -50 -44 -38 -34 -31 -31 -34 -39 -45 -48 -47 -45 -44 -45 -50 -50 -46 -40 -35 -33 -32 -33 -38 -46 -58 -63 -63 -61 -61 -61 -60 -57 -52 -45 -41 -40 -43 -48 -52 -54 -55 -55 -52 -45 -38 -32 -29 -29 -31 -32 -34 -38 -45 -46 -43 -39 -32 -28 -26 -24 -24 -24 -25 -25 -25 -25 -29 -34 -41 -46 -49 -47 -47 -9 -9 -9 -9 -9 -9 -9 -9 -10 -10 -11 -12 -12 -12 -12 -12 -11 -10 -9 -9 -8 -7 -6 -6 -6 -5 -5 -6 -6 -7 -8 -8 -7 -8 -10 -11 -12 -11 -8 -5 -2 -2 -4 -5 -6 -7 -7 -7 -7 -6 -6 -7 -6 -5 -4 -4 -3 -1 1 2 2 3 3 3 3 2 2 3 3 5 6 6 7 8 9 11 12 13 14 15 15 16 16 16 15 14 13 11 9 6 5 4 5 6 8 11 14 15 16 17 17 15 12 9 8 10 11 12 12 12 11 12 13 14 14 14 14 13 12 11 10 9 7 6 6 6 6 8 8 8 8 9 9 9 8 5 2 1 -0 -0 1 3 3 2 -1 -4 -5 -6 -7 -8 -8 -8 -7 -5 -3 0 2 3 3 1 1 1 1 1 -1 -3 -4 -4 -3 -1 1 1 1 1 3 4 3 1 0 -1 -1 -1 -1 -1 -1 -0 1 2 5 5 6 6 5 4 4 4 2 3 3 2 2 3 5 6 7 9 11 15 16 15 13 9 6 1 -3 -7 -11 -13 -15 -14 -10 -9 -9 -9 -9 -11 -11 -11 -10 -8 -6 -4 -4 -6 -7 -9 -9 -9 -10 -11 -12 -13 -15 -18 -20 -22 -24 -24 -24 -24 -24 -23 -23 -24 -25 -26 -26 -24 -20 -18 -15 -14 -14 -15 -17 -19 -21 -24 -26 -26 -25 -22 -19 -16 -15 -16 -17 -18 -17 -16 -15 -13 -12 -7 -1 3 5 4 1 -3 -6 -9 -13 -15 -19 -23 -25 -25 -24 -23 -20 -13 -11 -12 -15 -20 -26 -30 -33 -35 -36 -39 -40 -40 -40 -38 -34 -32 -30 -29 -30 -27 -22 -18 -15 -20 -23 -24 -23 -21 -17 -13 -11 -13 -20 -31 -41 -48 -53 -53 -50 -44 -38 -34 -32 -32 -36 -42 -47 -49 -47 -45 -45 -50 -51 -50 -45 -37 -32 -31 -32 -35 -41 -55 -63 -64 -61 -59 -61 -61 -59 -56 -49 -44 -41 -43 -49 -51 -55 -59 -59 -57 -51 -43 -35 -30 -29 -29 -31 -33 -35 -43 -47 -47 -43 -36 -31 -28 -26 -25 -25 -25 -25 -25 -24 -28 -32 -37 -43 -48 -48 -47 -10 -9 -9 -9 -10 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -10 -10 -8 -8 -8 -7 -6 -6 -6 -6 -6 -7 -7 -9 -10 -10 -9 -9 -9 -11 -13 -13 -10 -7 -3 -2 -3 -6 -7 -7 -7 -7 -8 -8 -8 -8 -7 -7 -6 -5 -4 -1 1 2 2 3 4 4 4 4 4 5 5 6 8 9 10 11 12 13 14 14 14 14 15 14 14 14 14 13 12 11 11 9 7 7 8 9 10 11 14 16 16 16 17 16 15 14 13 12 11 11 13 15 16 16 16 17 17 17 16 15 14 13 11 9 9 9 9 8 7 7 8 9 10 10 10 10 10 9 6 3 -0 -1 -1 2 5 5 3 -0 -2 -2 -2 -2 -3 -5 -6 -5 -4 -2 0 1 1 1 1 2 2 2 2 1 -0 -1 -2 -2 -1 -0 0 1 2 3 3 4 3 3 2 1 0 -0 -0 0 1 1 1 2 3 4 5 3 4 5 5 3 2 4 3 2 3 4 3 4 6 7 11 16 18 18 16 13 9 4 -1 -6 -11 -14 -13 -10 -9 -8 -8 -8 -10 -10 -10 -10 -10 -9 -7 -4 -2 -1 -2 -2 -3 -6 -7 -10 -12 -13 -16 -18 -21 -23 -24 -24 -24 -25 -24 -22 -22 -22 -24 -25 -25 -24 -22 -18 -16 -14 -14 -15 -17 -19 -22 -25 -27 -27 -26 -23 -21 -20 -20 -20 -20 -19 -18 -17 -16 -16 -12 -9 -4 1 4 3 1 -1 -5 -9 -11 -15 -18 -21 -22 -23 -24 -25 -16 -12 -10 -11 -14 -20 -27 -32 -34 -35 -37 -39 -40 -42 -41 -38 -35 -32 -31 -31 -29 -26 -21 -15 -18 -21 -24 -25 -23 -21 -19 -16 -14 -16 -24 -34 -44 -52 -55 -54 -50 -44 -37 -34 -33 -34 -38 -45 -48 -48 -45 -44 -49 -52 -52 -49 -39 -33 -31 -31 -34 -38 -50 -58 -62 -61 -59 -62 -62 -60 -59 -53 -47 -43 -43 -49 -52 -56 -58 -57 -56 -52 -46 -40 -33 -29 -29 -30 -32 -35 -41 -45 -48 -47 -42 -36 -32 -28 -26 -25 -26 -26 -25 -25 -27 -30 -34 -40 -46 -48 -47 -11 -10 -9 -9 -10 -11 -12 -12 -11 -11 -10 -9 -9 -9 -9 -9 -9 -7 -7 -7 -7 -7 -7 -7 -7 -8 -10 -10 -11 -12 -12 -11 -9 -9 -10 -10 -10 -8 -6 -4 -5 -10 -13 -13 -11 -9 -8 -8 -7 -7 -8 -9 -8 -6 -5 -2 -0 1 2 2 3 3 4 4 5 5 5 6 6 6 8 9 9 9 9 9 8 7 7 6 6 5 5 5 4 4 4 3 2 1 3 5 8 10 12 14 16 16 15 15 14 13 13 12 12 11 11 12 14 15 17 18 19 19 18 17 16 15 13 11 10 12 11 10 8 7 7 8 9 10 11 11 11 10 9 8 6 2 -0 -1 1 3 4 2 -1 -3 -2 -0 1 1 -1 -2 -1 1 3 2 1 0 1 2 2 2 2 2 2 1 -1 -2 -2 -2 -2 -1 0 2 3 4 4 4 4 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 4 5 4 6 11 16 19 20 18 15 10 4 -1 -7 -10 -12 -10 -9 -9 -9 -9 -10 -11 -10 -10 -9 -9 -8 -7 -4 -1 -1 -0 -1 -3 -4 -7 -9 -10 -12 -15 -17 -20 -22 -22 -22 -24 -23 -22 -21 -21 -22 -23 -24 -26 -25 -23 -19 -17 -16 -15 -16 -18 -20 -22 -24 -26 -27 -26 -25 -24 -24 -23 -22 -21 -21 -20 -18 -18 -16 -14 -12 -7 -2 2 3 3 -1 -5 -8 -11 -14 -15 -18 -20 -23 -26 -20 -16 -13 -11 -10 -16 -24 -31 -34 -35 -36 -38 -41 -42 -43 -41 -39 -36 -33 -32 -31 -29 -25 -18 -17 -20 -23 -26 -26 -25 -24 -22 -19 -16 -18 -25 -37 -48 -54 -56 -54 -50 -43 -38 -35 -35 -38 -43 -46 -46 -45 -44 -47 -51 -53 -51 -42 -35 -31 -31 -33 -36 -47 -56 -61 -63 -61 -61 -62 -62 -61 -55 -49 -45 -44 -47 -51 -55 -58 -59 -59 -55 -49 -44 -37 -32 -29 -29 -32 -35 -39 -43 -47 -50 -48 -43 -36 -31 -26 -25 -25 -26 -26 -26 -27 -28 -32 -37 -43 -47 -48 -13 -12 -10 -10 -10 -11 -11 -11 -10 -9 -8 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -8 -9 -8 -8 -9 -10 -10 -10 -9 -9 -9 -7 -7 -6 -6 -6 -6 -7 -8 -9 -11 -12 -12 -12 -12 -13 -13 -14 -14 -15 -16 -16 -15 -14 -11 -10 -8 -6 -5 -4 -4 -3 -3 -3 -2 -2 -2 -1 -2 -1 -1 -1 -1 -2 -3 -4 -5 -5 -6 -7 -7 -7 -7 -7 -7 -7 -7 -8 -9 -8 -6 -2 3 6 8 8 8 6 4 3 3 3 4 5 6 7 8 10 12 14 15 16 17 17 17 17 16 14 12 12 13 12 11 9 9 9 9 11 12 12 12 11 9 8 7 8 7 5 2 -1 -2 -2 -3 -3 -3 -2 0 2 3 2 1 1 3 5 5 5 5 4 2 1 1 2 3 3 1 -1 -2 -3 -3 -2 -1 0 2 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 2 1 0 -0 1 1 1 1 0 0 0 -0 2 3 5 5 4 3 6 10 14 19 19 18 14 10 5 -0 -4 -7 -8 -10 -10 -10 -10 -10 -11 -11 -10 -9 -9 -8 -8 -7 -5 -3 0 1 -2 -2 -6 -8 -9 -9 -10 -12 -14 -17 -19 -19 -21 -22 -21 -21 -22 -22 -23 -23 -26 -28 -27 -24 -20 -19 -17 -16 -16 -16 -18 -21 -24 -27 -28 -28 -27 -27 -26 -24 -23 -22 -22 -21 -21 -19 -18 -16 -13 -9 -4 2 6 5 1 -2 -6 -8 -10 -12 -15 -19 -22 -22 -21 -17 -12 -10 -13 -19 -26 -32 -34 -35 -37 -38 -41 -43 -43 -42 -39 -36 -34 -32 -31 -29 -23 -19 -19 -22 -26 -27 -27 -27 -26 -23 -19 -15 -18 -28 -42 -51 -56 -57 -54 -48 -43 -38 -36 -36 -39 -42 -45 -48 -46 -47 -49 -50 -49 -44 -37 -33 -32 -33 -36 -44 -52 -58 -61 -59 -59 -61 -61 -60 -55 -50 -47 -46 -47 -50 -54 -58 -61 -60 -57 -53 -47 -42 -37 -33 -30 -30 -34 -37 -40 -45 -50 -50 -46 -40 -33 -28 -26 -25 -25 -26 -27 -27 -27 -29 -34 -41 -46 -48 -13 -13 -11 -10 -10 -10 -10 -9 -8 -7 -6 -6 -6 -7 -7 -7 -7 -7 -7 -7 -8 -10 -11 -9 -9 -9 -10 -10 -9 -9 -8 -8 -7 -6 -6 -7 -7 -8 -10 -11 -11 -11 -11 -12 -13 -15 -17 -18 -19 -20 -21 -22 -23 -24 -24 -23 -22 -19 -16 -14 -13 -13 -13 -13 -13 -13 -12 -12 -12 -12 -12 -12 -12 -12 -12 -13 -13 -13 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -15 -14 -10 -6 -3 -2 -2 -3 -6 -8 -9 -9 -9 -8 -7 -6 -4 -2 1 3 5 7 8 9 11 11 11 10 9 8 7 8 9 8 8 9 10 12 13 13 14 13 11 9 8 6 8 8 8 5 2 0 -1 -2 -2 -1 1 2 4 4 3 3 4 5 6 7 7 6 3 -1 -2 -0 2 3 3 2 1 -0 -2 -2 -1 0 1 1 2 4 4 5 5 5 5 5 5 5 6 6 6 6 6 6 5 4 3 2 1 0 -0 -1 -1 -2 -2 -3 -2 1 5 7 7 6 4 5 8 15 19 19 17 15 12 8 4 0 -3 -7 -9 -10 -11 -10 -11 -12 -12 -11 -10 -9 -8 -8 -7 -6 -3 -2 -2 -2 -3 -4 -4 -4 -5 -5 -8 -11 -14 -16 -19 -20 -20 -22 -23 -23 -22 -22 -25 -29 -30 -29 -26 -23 -20 -18 -17 -16 -16 -17 -20 -25 -29 -30 -30 -29 -27 -25 -23 -22 -22 -23 -23 -22 -21 -19 -18 -15 -10 -4 3 5 5 2 -1 -5 -7 -8 -10 -14 -17 -20 -21 -19 -15 -12 -12 -14 -20 -27 -32 -34 -35 -37 -39 -42 -44 -45 -43 -40 -36 -34 -33 -32 -28 -23 -20 -21 -26 -28 -29 -29 -28 -26 -24 -18 -15 -20 -35 -45 -53 -58 -57 -54 -48 -43 -40 -38 -39 -40 -43 -48 -48 -47 -47 -47 -46 -44 -40 -37 -35 -34 -36 -41 -48 -55 -59 -57 -57 -58 -60 -59 -55 -51 -49 -48 -47 -48 -52 -57 -60 -60 -58 -55 -50 -46 -41 -36 -31 -30 -32 -35 -38 -42 -46 -49 -48 -43 -36 -30 -27 -25 -24 -26 -27 -27 -26 -27 -31 -38 -44 -47 -13 -13 -11 -10 -9 -8 -7 -7 -7 -7 -7 -7 -7 -8 -8 -8 -6 -6 -8 -7 -7 -8 -9 -9 -9 -9 -10 -10 -11 -12 -12 -12 -11 -12 -12 -13 -13 -13 -12 -11 -11 -11 -11 -11 -13 -15 -17 -19 -21 -23 -24 -25 -27 -27 -27 -27 -27 -25 -23 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -19 -19 -19 -18 -18 -17 -16 -15 -14 -12 -11 -10 -10 -10 -11 -12 -12 -13 -13 -12 -12 -13 -13 -12 -10 -8 -7 -7 -8 -10 -13 -15 -16 -16 -16 -15 -14 -13 -11 -9 -7 -6 -5 -3 -2 -1 0 -0 -1 -1 -2 -3 -2 -1 0 1 3 6 9 11 13 14 14 13 11 9 8 10 11 12 11 11 9 6 3 3 4 4 5 5 5 4 4 4 4 4 4 4 3 3 2 2 3 4 6 6 5 3 2 0 -1 -1 -1 -0 0 1 2 4 5 5 6 6 7 7 7 8 8 9 10 9 9 8 7 6 5 3 1 1 -0 -1 -1 -1 -2 -2 1 4 7 8 9 7 5 4 8 13 16 18 18 16 14 12 8 4 -1 -6 -9 -10 -10 -11 -11 -12 -12 -11 -10 -9 -8 -8 -7 -5 -5 -5 -4 -3 -2 -2 -2 -2 -3 -4 -7 -9 -12 -15 -17 -18 -21 -23 -23 -23 -23 -25 -29 -31 -32 -32 -28 -25 -21 -19 -16 -17 -18 -20 -21 -24 -27 -29 -31 -30 -26 -24 -23 -22 -23 -23 -23 -23 -22 -21 -20 -17 -13 -6 1 5 6 4 0 -2 -4 -5 -8 -11 -14 -17 -19 -18 -16 -13 -13 -16 -21 -28 -32 -34 -36 -36 -39 -41 -44 -46 -44 -40 -37 -35 -34 -32 -28 -24 -22 -25 -28 -30 -30 -30 -29 -27 -22 -17 -15 -25 -36 -48 -58 -59 -59 -54 -48 -44 -42 -40 -40 -42 -48 -49 -49 -48 -47 -45 -45 -44 -41 -37 -35 -36 -38 -43 -52 -56 -55 -55 -55 -58 -58 -57 -54 -51 -50 -47 -47 -50 -55 -58 -59 -58 -56 -52 -49 -44 -39 -34 -30 -30 -32 -35 -38 -42 -46 -48 -46 -40 -33 -28 -26 -24 -25 -26 -26 -25 -25 -30 -35 -40 -45 -12 -11 -10 -9 -8 -7 -7 -7 -7 -8 -8 -8 -8 -8 -8 -8 -8 -6 -8 -8 -9 -10 -11 -10 -10 -10 -8 -9 -10 -12 -13 -16 -19 -18 -17 -16 -17 -16 -14 -12 -12 -11 -11 -12 -13 -14 -16 -19 -21 -23 -25 -26 -27 -27 -27 -27 -27 -26 -24 -23 -22 -22 -21 -21 -21 -21 -21 -21 -21 -20 -19 -19 -18 -17 -16 -14 -12 -10 -8 -6 -4 -4 -4 -6 -7 -8 -8 -9 -8 -7 -7 -7 -7 -7 -7 -6 -6 -6 -6 -8 -11 -13 -15 -15 -15 -14 -13 -13 -12 -12 -12 -12 -11 -10 -9 -8 -8 -9 -10 -10 -10 -9 -9 -8 -7 -5 -3 0 3 6 9 10 10 10 9 9 10 12 13 14 14 14 12 9 9 8 8 7 6 6 6 6 5 3 1 -0 -0 -1 -1 -1 1 4 7 9 9 9 8 7 5 4 3 2 1 -0 1 2 3 5 6 7 7 8 9 9 10 10 12 13 12 12 11 11 10 8 6 4 3 1 1 0 0 -1 -1 0 3 4 7 8 7 5 3 4 8 12 16 18 18 18 17 15 11 7 1 -5 -7 -9 -9 -9 -10 -11 -11 -11 -11 -10 -9 -8 -7 -7 -7 -7 -5 -4 -4 -2 -2 -2 -2 -3 -5 -8 -12 -15 -17 -20 -22 -24 -24 -25 -27 -29 -32 -33 -35 -33 -30 -26 -23 -20 -19 -19 -18 -19 -21 -23 -26 -28 -30 -27 -26 -24 -22 -22 -23 -24 -24 -24 -24 -23 -22 -20 -17 -9 -1 5 8 5 2 -0 -1 -2 -4 -8 -12 -16 -17 -18 -16 -14 -14 -17 -23 -28 -33 -35 -35 -37 -39 -42 -45 -46 -44 -41 -38 -36 -35 -32 -28 -24 -26 -28 -30 -32 -32 -31 -29 -25 -20 -16 -20 -29 -42 -54 -61 -61 -58 -54 -47 -45 -43 -42 -43 -46 -49 -50 -49 -47 -47 -46 -46 -44 -39 -36 -36 -36 -39 -47 -53 -54 -54 -54 -57 -59 -59 -57 -55 -52 -48 -46 -47 -52 -56 -58 -58 -57 -54 -51 -48 -44 -38 -32 -30 -30 -33 -35 -38 -43 -46 -46 -43 -36 -31 -28 -25 -25 -25 -25 -25 -23 -27 -32 -37 -40 -10 -9 -8 -7 -7 -7 -7 -8 -8 -9 -9 -9 -8 -7 -7 -9 -9 -7 -9 -10 -11 -13 -15 -13 -13 -12 -10 -12 -13 -13 -14 -18 -23 -21 -18 -15 -16 -15 -14 -14 -14 -13 -13 -13 -14 -15 -17 -19 -21 -23 -25 -26 -27 -27 -26 -27 -26 -25 -23 -22 -21 -21 -20 -18 -16 -16 -17 -17 -17 -16 -15 -14 -14 -13 -13 -11 -9 -7 -6 -5 -5 -5 -5 -5 -6 -7 -6 -4 -2 -2 -1 -1 -2 -3 -4 -4 -3 -1 1 0 -2 -4 -6 -7 -7 -6 -6 -5 -6 -8 -10 -11 -11 -9 -8 -7 -7 -8 -9 -9 -9 -9 -10 -10 -10 -10 -10 -8 -6 -3 -1 1 2 2 3 3 5 7 8 9 9 10 10 9 9 9 8 7 7 7 7 7 6 4 2 1 1 -0 -1 -1 1 3 4 4 6 7 8 7 5 5 5 4 3 1 1 1 1 2 3 5 6 7 8 11 13 14 15 15 15 15 14 13 13 11 9 7 6 4 3 2 1 0 -1 -1 0 1 3 3 3 2 2 1 3 8 12 15 17 18 18 17 15 12 7 2 -2 -6 -8 -8 -8 -8 -9 -11 -12 -11 -10 -10 -9 -9 -8 -8 -7 -7 -7 -4 -5 -4 -2 -3 -3 -5 -8 -10 -13 -17 -20 -22 -23 -26 -26 -29 -31 -34 -37 -37 -35 -32 -30 -26 -24 -22 -20 -19 -18 -20 -24 -26 -30 -28 -26 -24 -22 -21 -22 -23 -24 -26 -26 -26 -26 -26 -25 -21 -11 -1 7 8 6 4 1 0 -0 -2 -5 -10 -15 -18 -18 -17 -15 -15 -19 -24 -30 -34 -35 -36 -37 -40 -44 -47 -47 -45 -41 -38 -36 -34 -31 -27 -27 -29 -31 -34 -35 -33 -30 -28 -25 -21 -20 -24 -34 -47 -57 -61 -61 -58 -53 -49 -46 -45 -44 -45 -49 -50 -50 -48 -48 -47 -48 -48 -43 -38 -36 -36 -37 -43 -51 -54 -54 -53 -56 -58 -59 -59 -57 -53 -49 -46 -46 -49 -54 -57 -58 -59 -56 -53 -52 -49 -44 -37 -32 -30 -31 -34 -35 -38 -42 -45 -44 -39 -34 -30 -27 -26 -25 -25 -25 -24 -25 -29 -33 -36 -9 -8 -7 -7 -7 -7 -8 -8 -9 -9 -9 -8 -7 -5 -6 -9 -11 -9 -11 -11 -12 -13 -15 -16 -16 -16 -15 -17 -16 -15 -15 -17 -19 -18 -16 -14 -13 -12 -12 -14 -15 -15 -14 -14 -15 -17 -19 -20 -21 -23 -24 -25 -25 -25 -25 -26 -26 -25 -24 -22 -20 -18 -15 -13 -11 -10 -10 -10 -11 -11 -10 -9 -9 -8 -8 -7 -7 -7 -8 -9 -11 -13 -15 -15 -16 -16 -14 -9 -6 -3 0 2 1 -2 -3 -4 -3 0 4 6 6 5 5 5 5 5 5 5 3 1 -2 -3 -3 -1 -0 -0 -1 -2 -1 -2 -2 -2 -3 -5 -6 -7 -9 -10 -10 -10 -8 -7 -7 -7 -7 -7 -6 -4 -2 -2 -1 0 1 2 3 3 4 5 5 5 6 7 7 6 5 4 3 2 1 2 3 3 2 0 1 3 6 8 9 9 8 7 5 4 2 2 2 2 1 2 3 5 7 10 13 14 15 15 16 16 16 16 15 14 13 11 9 8 6 5 3 2 0 -1 -1 -1 -2 -2 -3 -3 -2 -2 0 3 7 11 14 16 17 18 18 18 17 14 10 4 -2 -4 -5 -5 -7 -8 -10 -11 -12 -12 -12 -11 -9 -9 -9 -9 -10 -9 -10 -8 -5 -4 -3 -3 -5 -8 -12 -15 -18 -20 -22 -26 -26 -28 -31 -34 -37 -40 -40 -37 -36 -32 -29 -26 -24 -21 -18 -18 -20 -23 -27 -28 -28 -27 -24 -22 -21 -23 -24 -26 -27 -28 -29 -29 -29 -28 -21 -10 -0 5 7 7 5 3 2 2 0 -3 -10 -15 -18 -19 -16 -16 -16 -20 -25 -31 -33 -34 -35 -37 -42 -46 -48 -48 -46 -42 -39 -37 -35 -31 -30 -31 -33 -36 -36 -34 -32 -30 -29 -27 -23 -23 -28 -39 -52 -60 -62 -61 -57 -53 -50 -48 -47 -46 -49 -50 -50 -50 -48 -48 -49 -50 -46 -41 -38 -36 -36 -40 -47 -52 -53 -53 -55 -57 -58 -58 -57 -54 -50 -47 -45 -48 -52 -56 -58 -59 -56 -55 -54 -53 -48 -42 -36 -32 -30 -32 -33 -35 -37 -42 -43 -41 -37 -33 -30 -28 -26 -26 -25 -25 -26 -28 -31 -33 -8 -8 -8 -8 -8 -9 -9 -9 -9 -9 -8 -7 -6 -6 -7 -9 -12 -11 -12 -11 -10 -10 -12 -16 -18 -19 -19 -17 -15 -15 -15 -14 -12 -12 -14 -16 -17 -14 -11 -10 -11 -12 -12 -13 -15 -18 -21 -21 -21 -21 -22 -23 -23 -23 -23 -24 -24 -23 -22 -20 -17 -14 -12 -9 -8 -6 -6 -5 -5 -6 -5 -5 -4 -3 -3 -3 -5 -7 -9 -10 -12 -14 -15 -15 -14 -14 -13 -11 -11 -9 -5 -1 1 0 -1 -2 -2 -0 2 3 3 3 4 6 8 9 10 10 9 8 7 6 6 7 7 6 4 4 5 5 5 4 3 2 1 -1 -3 -5 -7 -8 -8 -8 -8 -9 -10 -12 -11 -10 -9 -9 -8 -7 -7 -6 -5 -4 -2 -1 1 2 3 5 6 6 6 6 5 5 5 6 6 5 3 -0 -2 -1 2 5 8 9 9 9 8 7 5 4 4 4 2 1 1 1 2 5 8 11 13 14 15 16 16 17 18 17 17 15 14 12 10 8 6 4 2 0 -1 -2 -4 -5 -6 -7 -6 -5 -3 -1 1 5 9 12 14 15 16 19 21 22 20 14 8 3 -1 -3 -4 -5 -6 -9 -11 -14 -15 -15 -12 -11 -11 -11 -12 -13 -14 -13 -10 -7 -5 -4 -4 -5 -8 -11 -14 -17 -20 -24 -26 -28 -31 -34 -36 -39 -40 -40 -39 -37 -34 -32 -29 -25 -22 -20 -18 -20 -23 -25 -26 -27 -26 -24 -23 -23 -24 -26 -28 -29 -30 -31 -31 -31 -27 -20 -12 -4 2 6 8 5 3 3 3 1 -4 -9 -14 -17 -16 -17 -16 -17 -20 -26 -30 -32 -34 -35 -39 -44 -48 -50 -51 -47 -43 -40 -38 -35 -33 -32 -33 -35 -36 -35 -33 -32 -32 -30 -28 -26 -26 -33 -46 -56 -62 -63 -60 -57 -53 -51 -49 -48 -49 -51 -52 -50 -49 -48 -49 -50 -47 -43 -39 -36 -36 -38 -43 -48 -51 -51 -53 -54 -56 -57 -57 -55 -52 -48 -46 -47 -50 -53 -56 -59 -58 -57 -56 -54 -51 -47 -41 -36 -32 -32 -33 -34 -34 -38 -40 -40 -39 -36 -32 -30 -29 -28 -27 -27 -27 -29 -30 -31 -9 -10 -10 -10 -10 -9 -9 -8 -8 -8 -7 -7 -8 -9 -10 -11 -12 -12 -11 -9 -8 -8 -11 -15 -17 -18 -17 -14 -12 -11 -9 -8 -7 -9 -12 -14 -14 -11 -9 -9 -10 -12 -12 -13 -15 -17 -18 -19 -19 -20 -20 -21 -21 -20 -20 -20 -20 -20 -18 -16 -14 -11 -8 -7 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -5 -7 -8 -9 -9 -9 -9 -8 -7 -5 -4 -3 -3 -5 -7 -8 -7 -5 -3 -3 -3 -3 -2 -0 -0 -2 -4 -4 -2 0 3 5 8 9 9 9 8 8 9 9 7 4 4 4 5 6 6 5 5 4 3 1 0 -1 -2 -3 -2 -2 -3 -5 -8 -9 -9 -10 -10 -10 -10 -9 -9 -8 -7 -6 -5 -4 -2 -1 1 3 3 5 7 8 8 8 8 9 8 5 2 -1 -2 -1 1 4 6 7 8 8 8 7 7 6 6 4 2 1 -0 -1 -0 2 5 8 11 12 14 15 17 19 21 21 21 20 19 16 12 9 6 3 1 -1 -2 -3 -5 -7 -7 -7 -6 -5 -4 -4 -1 2 5 7 8 11 16 21 23 22 18 15 11 6 3 1 -1 -3 -5 -8 -12 -15 -17 -16 -15 -14 -13 -13 -13 -14 -14 -14 -12 -9 -7 -5 -5 -6 -8 -10 -13 -18 -21 -25 -27 -29 -32 -34 -38 -41 -41 -42 -41 -40 -37 -35 -31 -28 -24 -20 -17 -18 -20 -22 -24 -26 -27 -26 -25 -25 -25 -27 -28 -29 -29 -31 -31 -30 -27 -22 -15 -7 1 7 5 3 2 3 3 -0 -4 -10 -15 -16 -18 -18 -17 -18 -23 -27 -31 -33 -34 -38 -43 -47 -51 -53 -52 -48 -44 -41 -38 -35 -34 -34 -34 -35 -34 -34 -34 -33 -32 -31 -29 -26 -28 -37 -48 -57 -61 -61 -59 -56 -53 -51 -50 -50 -51 -52 -51 -49 -49 -49 -49 -48 -45 -41 -37 -37 -37 -40 -44 -48 -49 -50 -51 -53 -55 -56 -55 -52 -49 -47 -46 -48 -51 -55 -57 -57 -56 -55 -54 -53 -50 -46 -40 -35 -33 -32 -33 -34 -36 -39 -41 -41 -39 -35 -33 -32 -31 -29 -29 -29 -29 -30 -30 -10 -11 -11 -11 -10 -10 -9 -8 -7 -7 -7 -8 -11 -16 -16 -14 -12 -11 -9 -8 -8 -10 -12 -12 -13 -13 -13 -11 -9 -7 -6 -7 -9 -11 -12 -12 -10 -10 -10 -10 -10 -10 -10 -12 -14 -16 -17 -17 -18 -18 -19 -20 -20 -19 -18 -17 -17 -17 -16 -14 -13 -11 -9 -8 -7 -7 -7 -7 -7 -7 -8 -9 -10 -10 -11 -12 -12 -12 -11 -9 -6 -4 -1 1 3 4 4 2 -2 -7 -11 -13 -13 -11 -10 -9 -9 -8 -6 -4 -5 -7 -9 -9 -8 -5 -3 0 3 5 6 6 6 6 5 2 0 1 2 3 5 5 5 6 6 6 6 6 5 5 4 4 4 3 2 -1 -3 -5 -7 -8 -8 -8 -8 -7 -7 -6 -6 -5 -5 -4 -3 -3 -2 -2 -0 3 5 6 5 4 5 6 6 5 3 2 1 2 2 3 5 6 6 7 7 7 7 7 6 4 2 -0 -2 -2 -1 0 3 6 8 10 12 13 14 16 19 21 21 21 20 17 14 10 7 4 2 1 -1 -3 -4 -5 -6 -7 -6 -6 -7 -5 -3 -2 -2 -2 1 7 13 18 19 19 19 18 16 12 7 3 1 -2 -5 -8 -12 -15 -17 -18 -17 -14 -12 -12 -13 -15 -15 -16 -14 -12 -10 -8 -7 -8 -9 -11 -15 -18 -22 -25 -27 -30 -32 -36 -40 -42 -43 -43 -42 -41 -39 -36 -32 -29 -24 -18 -16 -16 -18 -21 -25 -29 -30 -29 -28 -26 -26 -27 -27 -27 -28 -28 -29 -29 -29 -22 -14 -6 1 2 1 -0 -0 1 -0 -2 -6 -11 -15 -18 -18 -16 -17 -20 -26 -31 -34 -33 -35 -39 -44 -49 -54 -55 -53 -49 -45 -41 -38 -36 -35 -34 -35 -35 -35 -34 -33 -33 -32 -29 -25 -25 -29 -38 -50 -58 -61 -60 -58 -55 -53 -52 -51 -51 -52 -51 -51 -49 -48 -47 -47 -46 -43 -39 -38 -38 -39 -41 -45 -47 -47 -49 -51 -53 -54 -54 -52 -49 -47 -46 -46 -49 -54 -56 -56 -56 -55 -54 -53 -52 -49 -45 -39 -35 -33 -33 -34 -34 -37 -41 -43 -41 -38 -36 -34 -33 -31 -30 -30 -30 -30 -29 -10 -11 -11 -11 -10 -9 -8 -6 -6 -6 -8 -11 -15 -18 -17 -15 -12 -10 -9 -10 -11 -12 -12 -12 -11 -11 -10 -8 -7 -7 -9 -11 -12 -12 -11 -10 -9 -9 -9 -9 -8 -8 -9 -12 -14 -16 -16 -16 -16 -16 -16 -16 -17 -16 -15 -15 -15 -15 -15 -15 -14 -13 -13 -12 -12 -11 -11 -12 -12 -13 -14 -15 -16 -17 -17 -17 -16 -14 -12 -8 -5 -2 1 4 4 4 2 -1 -5 -10 -15 -18 -19 -19 -17 -16 -15 -15 -12 -9 -7 -7 -9 -10 -9 -8 -7 -5 -3 -1 1 2 2 1 -1 -2 -2 -1 1 3 5 5 6 6 7 9 10 10 10 9 9 9 9 9 8 7 4 2 -1 -2 -3 -4 -4 -3 -3 -3 -2 -2 -2 -2 -2 -1 -1 -1 -1 -1 -1 -0 0 -2 -3 -3 -2 2 4 4 4 3 3 4 4 5 4 5 5 6 6 7 7 7 5 2 1 -0 -1 -1 -0 1 3 4 6 7 8 11 15 18 21 23 22 20 16 12 10 8 6 4 2 0 -1 -3 -4 -6 -6 -6 -6 -5 -5 -6 -8 -11 -10 -5 2 9 13 16 18 20 21 18 14 10 6 2 -1 -4 -8 -12 -15 -18 -19 -18 -18 -15 -14 -14 -15 -18 -17 -16 -15 -13 -11 -10 -9 -9 -12 -15 -18 -22 -26 -28 -31 -34 -37 -40 -41 -42 -42 -40 -38 -36 -35 -32 -27 -22 -18 -15 -15 -17 -23 -28 -31 -31 -30 -28 -26 -26 -25 -25 -25 -26 -27 -27 -29 -24 -17 -11 -7 -5 -5 -6 -6 -5 -4 -4 -5 -7 -12 -15 -17 -16 -16 -17 -22 -27 -31 -32 -34 -37 -41 -46 -53 -56 -56 -53 -48 -44 -40 -38 -36 -34 -35 -35 -36 -35 -34 -34 -32 -30 -27 -24 -23 -29 -41 -53 -59 -61 -59 -56 -54 -53 -52 -52 -52 -53 -52 -50 -47 -45 -47 -47 -46 -42 -39 -39 -39 -40 -42 -44 -46 -47 -48 -50 -51 -52 -52 -50 -47 -45 -45 -47 -51 -54 -55 -56 -56 -55 -54 -53 -51 -48 -42 -38 -34 -33 -34 -34 -36 -39 -44 -43 -40 -38 -36 -35 -33 -32 -30 -30 -31 -30 -10 -10 -11 -10 -9 -7 -6 -5 -6 -8 -10 -12 -15 -18 -18 -14 -12 -11 -12 -13 -13 -13 -12 -11 -10 -9 -9 -10 -10 -11 -13 -14 -13 -12 -10 -9 -8 -8 -8 -7 -7 -7 -9 -11 -14 -15 -15 -15 -15 -15 -14 -14 -14 -14 -14 -14 -15 -15 -16 -16 -16 -16 -16 -16 -16 -15 -15 -15 -15 -16 -17 -17 -18 -18 -18 -17 -14 -12 -8 -5 -3 -2 -1 -2 -3 -5 -7 -10 -13 -16 -19 -21 -23 -22 -20 -19 -19 -18 -17 -14 -12 -9 -9 -8 -7 -6 -6 -6 -6 -4 -3 -2 -2 -3 -4 -4 -3 -1 0 2 4 4 4 5 6 8 9 10 10 10 10 10 11 11 12 12 11 9 8 6 4 3 3 3 3 3 3 3 3 3 2 2 2 1 0 -1 -2 -2 -1 -3 -5 -6 -8 -8 -7 -5 -3 -0 2 4 5 6 6 4 4 4 4 5 8 9 8 7 6 4 3 1 0 -1 -1 -0 1 2 4 7 10 13 17 20 21 21 19 16 14 11 9 8 7 5 3 1 -1 -3 -4 -5 -5 -5 -5 -7 -10 -13 -12 -10 -7 -2 4 9 13 15 18 19 18 16 12 8 4 1 -3 -7 -12 -16 -19 -20 -21 -19 -17 -16 -16 -17 -18 -19 -19 -18 -16 -14 -12 -10 -11 -13 -15 -19 -24 -27 -30 -32 -33 -36 -38 -39 -40 -40 -39 -37 -35 -32 -30 -28 -22 -17 -15 -14 -18 -22 -27 -29 -30 -28 -27 -25 -24 -23 -22 -23 -25 -25 -26 -23 -18 -13 -11 -10 -11 -12 -12 -12 -11 -10 -8 -7 -9 -12 -14 -15 -15 -16 -20 -25 -29 -31 -33 -34 -37 -42 -49 -55 -57 -56 -52 -47 -43 -40 -37 -35 -34 -34 -35 -36 -35 -34 -33 -31 -30 -25 -20 -20 -30 -46 -56 -61 -61 -58 -55 -54 -53 -52 -53 -54 -53 -51 -48 -47 -48 -49 -49 -45 -42 -40 -39 -38 -39 -41 -43 -44 -45 -47 -49 -51 -51 -50 -48 -46 -44 -45 -48 -52 -55 -56 -56 -56 -54 -53 -52 -50 -45 -41 -37 -34 -33 -34 -35 -36 -41 -42 -42 -40 -38 -37 -35 -33 -32 -32 -31 -31 -10 -10 -10 -8 -6 -5 -5 -6 -8 -10 -11 -12 -14 -18 -18 -14 -12 -12 -13 -14 -15 -14 -12 -11 -11 -11 -12 -13 -14 -14 -14 -13 -12 -11 -10 -9 -8 -7 -7 -7 -7 -8 -9 -11 -13 -14 -14 -14 -14 -12 -11 -12 -14 -15 -14 -15 -15 -16 -16 -16 -16 -16 -16 -16 -15 -15 -14 -14 -14 -14 -15 -15 -15 -14 -13 -11 -8 -5 -2 0 -0 -3 -6 -10 -13 -14 -15 -16 -18 -20 -22 -24 -25 -22 -20 -19 -17 -16 -17 -17 -17 -15 -14 -12 -9 -7 -6 -5 -6 -6 -5 -4 -4 -5 -5 -6 -5 -4 -3 -2 -2 -2 -1 -1 0 2 3 4 5 6 7 8 8 9 11 13 14 14 14 14 12 10 10 10 10 10 9 9 9 8 7 7 6 5 3 1 0 -0 0 -1 -2 -3 -5 -7 -9 -10 -10 -8 -6 -4 -1 2 4 5 4 3 3 5 7 8 9 11 10 8 6 5 5 3 1 -0 -1 -1 1 3 4 7 10 13 16 19 20 18 16 14 12 12 10 8 6 5 2 0 -1 -2 -2 -3 -4 -6 -9 -10 -8 -8 -8 -8 -4 0 4 7 11 15 18 19 17 14 11 7 4 -1 -5 -11 -15 -19 -22 -23 -22 -20 -19 -17 -17 -19 -21 -21 -21 -19 -16 -14 -12 -12 -13 -15 -21 -26 -29 -30 -31 -31 -34 -36 -37 -38 -38 -37 -35 -33 -32 -30 -27 -23 -19 -14 -13 -15 -19 -24 -28 -28 -27 -25 -23 -21 -20 -21 -23 -24 -25 -23 -19 -14 -11 -11 -12 -15 -17 -18 -19 -17 -15 -12 -10 -10 -11 -13 -13 -14 -17 -23 -28 -31 -32 -32 -33 -36 -42 -49 -54 -56 -54 -49 -46 -42 -38 -37 -35 -33 -33 -35 -35 -35 -34 -32 -31 -26 -20 -16 -21 -39 -53 -60 -62 -60 -57 -55 -54 -53 -54 -54 -53 -51 -48 -47 -48 -50 -51 -49 -45 -41 -39 -37 -37 -39 -41 -42 -43 -45 -47 -49 -51 -50 -49 -47 -45 -44 -46 -49 -52 -55 -56 -56 -55 -54 -52 -50 -47 -44 -40 -36 -34 -33 -34 -34 -37 -41 -42 -42 -40 -38 -36 -34 -33 -32 -32 -31 -10 -9 -8 -7 -6 -6 -7 -9 -10 -11 -12 -14 -15 -17 -17 -14 -12 -11 -12 -14 -16 -16 -13 -10 -12 -14 -16 -15 -15 -14 -13 -11 -10 -9 -9 -8 -7 -6 -7 -7 -7 -8 -9 -11 -12 -12 -12 -12 -11 -10 -9 -11 -13 -14 -14 -15 -15 -15 -15 -14 -14 -13 -13 -12 -12 -11 -10 -10 -10 -10 -10 -10 -10 -9 -8 -5 -3 -0 1 -1 -5 -9 -12 -15 -16 -17 -16 -16 -17 -21 -24 -26 -26 -23 -20 -18 -16 -13 -14 -16 -18 -20 -20 -20 -18 -16 -13 -10 -9 -9 -8 -6 -5 -6 -7 -9 -11 -11 -11 -12 -11 -11 -10 -9 -9 -7 -6 -5 -4 -3 -1 1 2 4 5 8 10 12 14 16 16 15 14 14 14 14 14 14 13 12 11 10 9 8 7 5 4 3 2 2 1 -0 -1 -3 -5 -8 -9 -10 -11 -11 -9 -6 -3 -0 2 3 4 5 6 7 7 7 7 7 8 8 11 10 8 5 3 -0 -0 -0 0 2 3 5 8 11 14 15 15 14 14 14 13 11 9 8 5 4 3 3 3 1 -1 -4 -6 -6 -6 -6 -7 -8 -7 -6 -4 -1 1 6 12 16 19 19 17 14 11 7 2 -2 -8 -13 -19 -26 -29 -27 -22 -18 -18 -19 -22 -23 -23 -23 -22 -20 -18 -16 -14 -14 -18 -21 -25 -27 -28 -28 -30 -32 -34 -36 -37 -36 -35 -33 -32 -31 -30 -27 -24 -20 -15 -12 -13 -18 -23 -26 -27 -25 -22 -21 -20 -20 -22 -23 -25 -23 -20 -16 -13 -12 -13 -15 -19 -22 -23 -23 -21 -18 -13 -10 -9 -11 -12 -12 -14 -19 -26 -30 -31 -31 -31 -31 -35 -42 -49 -55 -56 -54 -50 -45 -40 -38 -35 -33 -32 -34 -34 -34 -34 -34 -31 -29 -25 -20 -20 -31 -46 -57 -62 -61 -59 -57 -55 -54 -54 -54 -53 -51 -49 -47 -48 -50 -52 -51 -47 -42 -39 -37 -36 -37 -39 -40 -40 -41 -44 -48 -50 -51 -51 -49 -47 -45 -45 -46 -49 -52 -54 -56 -56 -54 -52 -50 -48 -46 -43 -39 -34 -32 -32 -33 -34 -38 -42 -43 -41 -38 -36 -35 -34 -33 -32 -31 -10 -10 -10 -10 -10 -11 -11 -10 -10 -10 -12 -14 -16 -15 -15 -12 -10 -9 -10 -13 -16 -17 -15 -13 -14 -16 -17 -15 -14 -12 -11 -9 -8 -8 -8 -8 -7 -6 -7 -7 -7 -7 -8 -10 -10 -11 -11 -11 -10 -8 -9 -10 -11 -12 -13 -14 -14 -13 -13 -12 -11 -10 -10 -9 -8 -7 -7 -6 -6 -6 -7 -7 -7 -6 -4 -3 -3 -4 -6 -8 -10 -11 -12 -12 -11 -11 -10 -11 -14 -18 -22 -25 -25 -23 -20 -17 -14 -12 -13 -14 -17 -19 -20 -20 -20 -19 -18 -16 -14 -12 -10 -9 -9 -9 -10 -12 -14 -15 -16 -17 -17 -16 -16 -15 -15 -14 -13 -13 -12 -11 -9 -7 -6 -4 -2 -0 2 4 6 9 11 12 13 13 13 13 13 14 14 13 12 11 11 10 10 9 8 7 5 4 3 2 2 1 -1 -3 -5 -7 -9 -11 -11 -11 -9 -7 -5 -2 1 2 4 5 5 5 7 8 10 11 13 12 11 9 7 4 2 0 -2 -2 -1 -0 1 3 5 8 10 11 12 14 14 13 12 10 9 8 8 8 8 6 4 1 -1 -3 -4 -4 -5 -7 -6 -6 -6 -5 -5 -2 2 8 15 19 20 19 17 14 10 7 2 -4 -12 -23 -28 -28 -23 -20 -19 -20 -21 -22 -24 -25 -25 -24 -23 -22 -18 -16 -16 -16 -20 -23 -23 -24 -27 -29 -32 -35 -36 -35 -34 -32 -32 -30 -30 -30 -28 -26 -20 -14 -11 -12 -15 -19 -22 -24 -23 -23 -21 -21 -22 -23 -25 -24 -22 -20 -17 -14 -13 -15 -18 -21 -24 -25 -25 -23 -19 -15 -11 -11 -10 -11 -12 -15 -22 -26 -29 -29 -29 -28 -30 -35 -42 -50 -55 -55 -53 -49 -44 -40 -36 -33 -32 -33 -34 -34 -35 -35 -33 -32 -30 -26 -23 -28 -39 -50 -60 -60 -60 -58 -55 -54 -53 -53 -53 -52 -50 -48 -48 -49 -52 -52 -48 -44 -40 -38 -36 -36 -37 -38 -37 -38 -41 -45 -48 -50 -51 -51 -50 -47 -46 -45 -46 -49 -52 -55 -56 -55 -53 -51 -49 -47 -45 -40 -35 -33 -33 -33 -33 -37 -41 -43 -41 -38 -36 -34 -34 -33 -32 -31 -14 -15 -15 -14 -14 -13 -11 -10 -9 -10 -12 -14 -15 -13 -11 -10 -9 -8 -10 -12 -14 -16 -18 -17 -16 -16 -16 -15 -12 -10 -9 -8 -7 -7 -8 -8 -7 -6 -7 -7 -7 -7 -8 -10 -10 -11 -12 -13 -11 -10 -10 -11 -12 -13 -12 -13 -13 -12 -11 -10 -10 -9 -8 -7 -6 -6 -5 -4 -4 -4 -4 -3 -3 -3 -2 -3 -6 -8 -10 -11 -10 -9 -8 -7 -6 -6 -6 -8 -11 -15 -20 -24 -24 -21 -18 -14 -12 -11 -12 -14 -15 -17 -17 -17 -17 -17 -17 -15 -14 -13 -13 -12 -10 -9 -8 -9 -10 -11 -12 -13 -13 -13 -12 -12 -12 -12 -11 -11 -11 -11 -10 -9 -8 -8 -8 -7 -6 -5 -5 -3 -0 2 4 5 6 6 6 7 7 7 8 8 8 8 10 11 11 11 9 8 6 5 4 3 2 1 -0 -2 -4 -6 -8 -9 -10 -9 -8 -7 -4 -3 0 2 3 5 8 9 10 11 12 12 12 11 10 8 6 4 3 2 1 -1 -2 -1 -1 0 3 6 8 10 12 12 12 12 11 11 11 12 11 10 7 6 4 2 -0 -2 -3 -5 -4 -4 -4 -5 -5 -5 -4 -2 2 7 12 17 20 19 17 15 11 6 -2 -12 -19 -22 -21 -20 -20 -21 -22 -22 -23 -24 -25 -26 -27 -26 -23 -20 -18 -16 -17 -18 -20 -22 -25 -26 -28 -31 -33 -33 -32 -30 -30 -29 -29 -30 -30 -30 -25 -19 -14 -10 -10 -13 -15 -18 -20 -23 -24 -23 -23 -24 -25 -26 -25 -25 -22 -18 -16 -15 -17 -20 -23 -25 -27 -26 -24 -21 -17 -15 -11 -10 -9 -10 -17 -22 -25 -27 -28 -26 -27 -30 -35 -44 -51 -55 -54 -50 -46 -41 -37 -35 -34 -33 -33 -34 -36 -36 -36 -35 -33 -31 -26 -25 -29 -40 -52 -58 -60 -58 -56 -53 -53 -53 -54 -53 -51 -49 -48 -48 -50 -52 -50 -45 -41 -38 -36 -35 -34 -35 -34 -35 -37 -41 -45 -48 -51 -52 -51 -48 -46 -45 -44 -45 -49 -52 -55 -56 -55 -52 -50 -48 -45 -41 -37 -34 -33 -33 -34 -37 -40 -43 -42 -39 -36 -34 -34 -33 -32 -32 -18 -18 -17 -15 -15 -11 -10 -9 -10 -10 -12 -14 -15 -13 -10 -8 -7 -8 -10 -12 -14 -16 -17 -17 -15 -14 -12 -12 -9 -7 -6 -6 -6 -7 -7 -7 -7 -7 -7 -7 -8 -8 -9 -11 -12 -13 -14 -14 -13 -12 -12 -12 -12 -12 -12 -11 -11 -10 -10 -9 -8 -7 -7 -6 -6 -5 -4 -3 -2 -1 -0 -0 -0 -1 -2 -5 -7 -9 -10 -9 -7 -5 -3 -3 -4 -4 -5 -7 -9 -13 -17 -19 -20 -16 -13 -11 -10 -11 -13 -15 -16 -17 -17 -15 -15 -16 -17 -15 -15 -15 -15 -14 -11 -8 -6 -4 -4 -5 -5 -6 -6 -6 -6 -6 -6 -5 -5 -4 -5 -5 -5 -5 -5 -5 -6 -5 -5 -6 -7 -7 -6 -5 -4 -3 -2 -2 -2 -1 -1 -1 -1 0 1 3 5 8 10 11 11 11 10 9 8 6 5 4 3 2 -0 -2 -3 -4 -6 -7 -7 -7 -6 -6 -3 -1 0 3 5 7 9 10 10 10 10 10 9 9 8 7 7 5 4 2 -0 -1 -2 -2 -1 -0 2 4 7 9 11 11 11 12 13 13 12 10 9 8 8 6 4 1 -0 -3 -2 -2 -3 -4 -4 -6 -7 -7 -7 -2 4 10 15 18 19 19 18 15 9 1 -7 -13 -16 -19 -20 -22 -23 -23 -23 -23 -23 -25 -26 -27 -26 -24 -22 -19 -17 -16 -16 -17 -20 -23 -26 -29 -29 -30 -29 -27 -26 -26 -27 -29 -30 -30 -29 -25 -19 -13 -9 -8 -9 -13 -19 -23 -25 -26 -25 -26 -27 -28 -28 -29 -27 -24 -21 -19 -19 -20 -22 -25 -26 -27 -27 -25 -22 -20 -14 -10 -7 -5 -11 -17 -22 -25 -27 -26 -25 -26 -29 -37 -45 -51 -53 -52 -48 -43 -39 -36 -35 -33 -33 -35 -35 -36 -36 -36 -35 -32 -27 -22 -21 -27 -42 -53 -59 -61 -58 -54 -53 -54 -55 -56 -54 -52 -50 -48 -49 -51 -51 -48 -43 -39 -37 -36 -35 -35 -35 -34 -34 -37 -41 -46 -50 -52 -51 -49 -47 -45 -43 -43 -46 -49 -53 -55 -56 -54 -52 -49 -46 -42 -38 -35 -33 -33 -34 -36 -38 -41 -42 -41 -38 -35 -34 -33 -33 -33 -18 -17 -15 -13 -12 -10 -9 -10 -10 -11 -12 -14 -15 -15 -10 -7 -6 -7 -10 -12 -14 -14 -14 -12 -11 -9 -7 -7 -6 -5 -5 -6 -6 -7 -7 -7 -6 -6 -7 -8 -8 -9 -10 -11 -12 -13 -14 -14 -13 -13 -12 -11 -11 -11 -10 -10 -9 -9 -8 -7 -7 -6 -6 -5 -5 -4 -4 -3 -1 0 1 1 1 -1 -4 -6 -7 -8 -7 -6 -4 -3 -2 -3 -4 -5 -6 -7 -9 -10 -12 -13 -12 -10 -8 -8 -10 -12 -15 -16 -18 -19 -19 -17 -17 -17 -19 -17 -18 -18 -18 -16 -12 -10 -8 -6 -4 -3 -3 -3 -3 -3 -3 -2 -2 -1 -0 1 1 1 0 0 -0 -0 -0 1 1 -0 -2 -3 -4 -4 -4 -3 -3 -3 -3 -3 -4 -5 -6 -6 -6 -4 -2 1 3 5 7 9 10 10 11 10 9 8 7 5 3 1 0 -1 -2 -3 -4 -4 -5 -5 -4 -3 -3 -1 1 4 7 9 9 9 9 9 9 9 9 9 10 10 8 6 3 2 1 0 -0 -0 -0 0 1 4 7 10 12 13 13 10 9 8 8 9 10 8 6 3 1 -1 -1 -2 -2 -4 -4 -5 -6 -7 -8 -7 -5 -1 3 9 14 17 18 18 16 12 5 -2 -9 -13 -17 -20 -22 -23 -22 -22 -22 -22 -24 -26 -27 -27 -26 -23 -20 -17 -14 -13 -14 -15 -18 -20 -23 -25 -25 -24 -24 -25 -25 -27 -28 -29 -29 -28 -25 -20 -13 -8 -6 -8 -14 -20 -24 -27 -27 -28 -29 -30 -31 -31 -31 -29 -27 -25 -23 -23 -23 -25 -25 -27 -27 -26 -26 -22 -17 -12 -8 -3 -5 -10 -16 -22 -25 -25 -25 -25 -25 -30 -38 -44 -49 -51 -49 -45 -40 -37 -35 -33 -33 -34 -34 -35 -35 -35 -34 -31 -27 -21 -16 -17 -30 -44 -55 -60 -59 -56 -55 -55 -55 -56 -56 -55 -53 -50 -49 -49 -50 -50 -46 -41 -39 -37 -36 -36 -36 -35 -33 -34 -39 -44 -49 -52 -52 -50 -48 -46 -44 -42 -43 -46 -50 -54 -56 -56 -54 -50 -47 -44 -41 -37 -34 -33 -34 -35 -36 -39 -42 -42 -39 -36 -35 -34 -33 -33 -18 -16 -14 -11 -10 -10 -9 -10 -10 -10 -11 -11 -12 -13 -10 -8 -8 -10 -11 -11 -12 -12 -11 -9 -7 -6 -5 -5 -5 -5 -6 -6 -6 -7 -7 -7 -7 -7 -7 -8 -9 -9 -10 -11 -12 -13 -13 -13 -13 -12 -11 -11 -10 -10 -9 -9 -8 -8 -7 -6 -6 -6 -5 -4 -3 -3 -3 -2 -1 -0 0 -0 -1 -3 -5 -6 -6 -5 -4 -4 -4 -4 -4 -4 -5 -5 -6 -6 -6 -6 -6 -5 -4 -4 -6 -8 -11 -14 -17 -19 -20 -22 -22 -21 -21 -21 -22 -21 -22 -21 -20 -17 -15 -13 -12 -12 -11 -9 -8 -7 -7 -7 -6 -5 -4 -2 -1 0 2 2 2 2 2 2 3 4 5 4 3 2 1 0 -0 -0 -0 -0 -1 -1 -2 -3 -5 -6 -8 -8 -7 -6 -5 -3 -0 3 5 6 8 8 10 11 11 10 8 6 4 2 1 -1 -1 -1 -1 -1 -1 -1 -2 -2 -2 -0 2 4 6 7 8 8 9 10 10 10 11 13 12 10 8 6 5 4 4 3 2 1 0 1 2 6 7 9 11 9 8 7 7 7 8 7 7 5 3 2 0 -1 -2 -4 -4 -5 -6 -6 -6 -7 -8 -8 -7 -4 2 7 11 15 17 16 13 7 -0 -6 -11 -16 -19 -22 -22 -23 -22 -22 -23 -24 -26 -27 -27 -25 -23 -20 -16 -12 -10 -10 -12 -14 -17 -19 -20 -20 -21 -21 -23 -24 -25 -26 -28 -29 -29 -26 -19 -13 -8 -6 -10 -16 -21 -26 -28 -29 -31 -32 -33 -34 -34 -34 -33 -31 -28 -26 -25 -25 -24 -27 -27 -27 -28 -24 -20 -16 -11 -5 -2 -4 -9 -16 -21 -23 -24 -24 -24 -26 -31 -37 -43 -48 -48 -46 -42 -39 -35 -34 -33 -33 -32 -32 -32 -32 -31 -29 -26 -22 -17 -12 -19 -33 -48 -57 -60 -58 -56 -54 -55 -56 -57 -57 -55 -52 -49 -49 -50 -51 -49 -44 -41 -39 -38 -37 -38 -37 -36 -36 -38 -43 -48 -52 -53 -51 -49 -47 -45 -43 -42 -43 -46 -51 -55 -56 -55 -52 -50 -47 -43 -40 -36 -33 -34 -35 -35 -37 -40 -42 -41 -38 -36 -34 -33 -33 -16 -16 -13 -11 -10 -9 -9 -9 -9 -9 -9 -9 -10 -12 -11 -11 -12 -13 -12 -10 -10 -10 -9 -7 -6 -5 -5 -5 -6 -6 -6 -6 -6 -7 -7 -7 -7 -7 -8 -8 -9 -9 -10 -10 -11 -12 -13 -12 -12 -11 -11 -10 -10 -9 -9 -8 -7 -7 -6 -6 -6 -5 -5 -4 -2 -2 -2 -2 -2 -2 -3 -3 -4 -4 -4 -4 -3 -3 -3 -4 -4 -4 -3 -2 -2 -2 -1 -1 -0 0 1 -0 -2 -4 -7 -9 -13 -16 -19 -21 -22 -24 -24 -24 -24 -23 -23 -22 -22 -22 -21 -18 -18 -17 -17 -18 -19 -18 -17 -16 -15 -14 -14 -13 -11 -9 -8 -6 -3 -1 -0 0 1 1 2 4 5 5 5 4 4 3 2 2 1 1 1 1 1 0 -1 -2 -5 -6 -7 -8 -8 -7 -5 -2 -1 0 2 3 4 7 9 10 10 10 8 6 4 2 0 -1 -1 1 2 3 3 3 1 -1 -1 -1 1 2 4 6 7 8 9 10 11 13 14 13 12 11 10 9 8 8 6 4 2 0 -0 2 4 6 8 7 6 6 6 6 7 6 6 6 5 4 3 1 -1 -4 -5 -6 -7 -6 -4 -5 -7 -9 -11 -12 -10 -6 -1 5 11 16 16 13 9 3 -2 -7 -11 -15 -18 -20 -22 -22 -23 -23 -23 -24 -25 -25 -25 -23 -20 -14 -9 -6 -5 -6 -9 -12 -14 -14 -15 -17 -18 -20 -22 -23 -25 -27 -29 -30 -26 -20 -14 -8 -8 -12 -17 -24 -28 -29 -31 -33 -34 -36 -37 -37 -37 -34 -33 -31 -28 -25 -24 -26 -28 -28 -29 -26 -24 -21 -18 -12 -6 -3 -4 -8 -14 -19 -23 -24 -23 -23 -26 -31 -37 -43 -46 -47 -45 -41 -37 -35 -34 -31 -31 -31 -31 -30 -29 -28 -27 -26 -23 -16 -14 -23 -38 -53 -60 -61 -59 -56 -55 -55 -56 -57 -56 -54 -51 -50 -51 -53 -52 -48 -43 -40 -39 -39 -39 -40 -39 -38 -39 -41 -45 -51 -52 -53 -51 -49 -46 -44 -42 -41 -42 -47 -51 -54 -54 -53 -51 -48 -46 -42 -39 -36 -34 -34 -34 -36 -39 -41 -43 -41 -38 -35 -33 -33 -13 -14 -13 -12 -11 -9 -9 -9 -9 -10 -10 -9 -10 -12 -12 -13 -14 -14 -12 -9 -8 -8 -8 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -7 -7 -7 -7 -8 -8 -9 -9 -9 -10 -10 -11 -11 -11 -11 -11 -10 -10 -9 -9 -9 -8 -7 -6 -5 -5 -5 -5 -5 -4 -3 -2 -2 -2 -2 -4 -4 -4 -4 -2 -1 -1 -1 -1 -2 -2 -2 -2 0 2 3 3 4 4 5 4 2 -0 -4 -7 -9 -11 -14 -16 -19 -20 -21 -23 -23 -24 -23 -21 -19 -17 -17 -18 -19 -18 -18 -18 -19 -20 -22 -22 -22 -22 -20 -21 -21 -21 -19 -17 -16 -14 -11 -7 -5 -3 -2 -2 -1 1 2 3 3 4 4 3 3 2 1 0 0 1 1 2 2 2 0 -2 -4 -5 -6 -6 -5 -4 -4 -4 -3 -3 -3 -1 2 4 6 7 7 6 5 3 1 0 -0 1 2 4 5 5 4 3 1 -0 -2 -2 -1 1 3 4 7 9 11 12 14 15 15 14 13 13 13 13 12 10 7 5 4 3 3 4 5 4 4 5 5 4 4 4 4 5 7 7 6 3 1 -1 -4 -6 -7 -7 -5 -4 -4 -6 -9 -13 -15 -15 -14 -9 -2 6 12 12 12 8 4 1 -3 -6 -10 -14 -18 -21 -21 -21 -20 -21 -22 -24 -26 -26 -24 -18 -11 -4 1 1 -1 -4 -7 -7 -9 -11 -14 -15 -17 -19 -22 -26 -27 -29 -28 -25 -20 -14 -9 -9 -13 -20 -25 -28 -31 -33 -33 -35 -37 -38 -40 -37 -36 -34 -30 -26 -25 -26 -28 -29 -30 -29 -27 -26 -24 -21 -14 -8 -4 -4 -8 -14 -20 -24 -24 -23 -23 -25 -31 -37 -42 -45 -46 -43 -39 -37 -35 -31 -30 -30 -31 -31 -29 -29 -29 -30 -28 -23 -15 -16 -27 -44 -57 -62 -62 -59 -56 -55 -55 -56 -57 -55 -53 -51 -51 -53 -54 -51 -46 -41 -39 -39 -40 -41 -41 -39 -37 -37 -41 -47 -51 -53 -53 -51 -48 -45 -42 -40 -39 -42 -46 -49 -51 -53 -52 -50 -48 -45 -43 -39 -36 -33 -33 -35 -37 -40 -44 -43 -39 -36 -34 -33 -12 -11 -10 -10 -10 -10 -12 -12 -12 -12 -11 -10 -10 -11 -11 -12 -13 -12 -9 -7 -7 -8 -9 -8 -7 -6 -6 -5 -6 -7 -7 -7 -6 -7 -7 -6 -6 -7 -8 -8 -8 -9 -9 -10 -10 -11 -11 -11 -11 -10 -9 -8 -8 -8 -8 -7 -6 -5 -5 -4 -4 -5 -5 -5 -5 -4 -3 -2 -1 -1 -2 -2 -0 1 2 2 2 1 1 1 2 3 3 3 3 3 3 2 0 -2 -5 -7 -8 -10 -11 -12 -13 -14 -16 -17 -17 -18 -19 -18 -17 -15 -11 -10 -10 -11 -14 -16 -17 -17 -18 -19 -20 -21 -21 -21 -20 -21 -22 -22 -22 -21 -21 -19 -16 -13 -10 -8 -6 -5 -4 -3 -2 -0 1 3 3 3 3 2 1 0 -0 -0 -0 0 1 2 3 2 1 0 -1 -1 -2 -2 -3 -3 -5 -6 -8 -8 -6 -3 -1 1 2 3 3 2 1 1 -0 -0 1 2 3 4 5 6 5 4 3 0 -2 -3 -3 -3 -1 2 4 7 11 13 15 15 16 16 16 16 15 15 13 11 10 7 4 3 3 2 3 4 5 5 5 4 4 4 5 6 6 5 2 -1 -4 -5 -5 -6 -6 -6 -5 -5 -7 -10 -14 -17 -20 -21 -16 -8 1 6 8 8 7 5 3 1 -2 -5 -9 -14 -18 -21 -22 -21 -19 -20 -23 -26 -26 -23 -16 -8 0 5 5 4 2 1 -2 -5 -8 -9 -11 -14 -18 -21 -23 -25 -26 -26 -24 -18 -12 -10 -11 -15 -21 -26 -29 -32 -33 -35 -37 -40 -42 -39 -38 -36 -31 -27 -25 -25 -27 -29 -30 -31 -30 -29 -28 -28 -23 -16 -8 -5 -5 -9 -15 -21 -24 -24 -22 -22 -25 -31 -37 -42 -46 -45 -42 -39 -37 -32 -32 -32 -32 -32 -31 -30 -31 -32 -30 -28 -20 -15 -18 -34 -49 -59 -63 -61 -57 -54 -53 -54 -56 -56 -54 -51 -50 -51 -53 -52 -48 -42 -40 -40 -41 -42 -43 -41 -38 -37 -38 -44 -49 -53 -54 -53 -50 -46 -43 -40 -38 -38 -41 -45 -49 -52 -52 -51 -49 -47 -44 -41 -37 -33 -33 -34 -36 -39 -42 -43 -41 -38 -35 -34 -12 -10 -9 -9 -11 -14 -15 -15 -13 -12 -11 -10 -9 -9 -9 -11 -11 -9 -7 -6 -8 -10 -11 -9 -7 -6 -5 -5 -5 -6 -7 -7 -7 -7 -7 -7 -7 -8 -8 -9 -9 -9 -10 -12 -12 -12 -11 -11 -11 -10 -9 -7 -7 -7 -6 -5 -5 -5 -4 -4 -4 -4 -5 -6 -7 -7 -5 -3 -1 1 2 2 3 3 4 4 3 3 3 3 3 2 1 -1 -2 -2 -3 -4 -6 -7 -9 -10 -10 -9 -10 -11 -12 -13 -13 -12 -11 -11 -11 -11 -10 -9 -5 -4 -4 -5 -9 -12 -14 -15 -15 -16 -16 -15 -15 -15 -16 -16 -17 -18 -18 -19 -19 -18 -16 -14 -12 -10 -8 -6 -6 -5 -4 -3 -1 1 2 3 4 4 4 3 2 0 -1 -2 -1 -0 2 3 3 3 3 3 3 2 2 1 -1 -3 -6 -9 -9 -9 -8 -6 -3 -2 -1 -1 -1 -1 -1 -2 -1 -0 0 2 3 4 5 6 6 5 4 2 -0 -3 -4 -5 -4 -2 2 6 10 13 14 15 16 16 16 16 15 14 13 11 8 6 5 3 2 3 4 6 6 5 4 4 3 4 5 5 4 1 -1 -3 -3 -5 -7 -8 -8 -7 -6 -6 -8 -12 -17 -23 -23 -19 -11 -4 -0 3 5 5 4 4 4 2 -1 -7 -13 -18 -21 -21 -18 -17 -18 -21 -25 -26 -23 -17 -9 -1 4 8 10 8 5 1 -1 -2 -5 -8 -11 -14 -17 -20 -23 -25 -27 -23 -19 -15 -13 -12 -17 -22 -26 -30 -33 -36 -37 -39 -42 -41 -39 -36 -32 -30 -27 -26 -26 -28 -29 -31 -31 -31 -30 -31 -28 -23 -16 -10 -5 -5 -10 -16 -22 -24 -23 -20 -21 -25 -32 -39 -45 -47 -44 -42 -40 -35 -34 -34 -34 -33 -33 -31 -31 -32 -31 -30 -25 -19 -15 -23 -39 -52 -61 -63 -59 -55 -52 -52 -54 -55 -54 -52 -50 -50 -52 -53 -51 -45 -42 -40 -41 -43 -45 -45 -42 -39 -38 -42 -47 -51 -54 -53 -51 -48 -45 -42 -38 -36 -37 -40 -45 -49 -51 -51 -50 -48 -45 -41 -38 -34 -33 -33 -35 -38 -41 -43 -43 -41 -38 -36 -12 -12 -11 -11 -13 -16 -16 -14 -12 -11 -11 -10 -8 -7 -9 -10 -9 -8 -8 -9 -11 -12 -12 -9 -7 -5 -4 -5 -6 -7 -7 -7 -7 -8 -9 -9 -9 -8 -8 -8 -9 -9 -10 -12 -12 -11 -10 -9 -10 -9 -8 -6 -6 -6 -5 -4 -4 -4 -4 -4 -4 -4 -5 -6 -7 -7 -7 -4 -1 2 4 5 4 4 4 4 4 3 1 -1 -2 -4 -6 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -7 -7 -8 -9 -10 -10 -8 -6 -4 -4 -4 -5 -5 -4 -4 -4 -5 -7 -9 -10 -11 -11 -10 -10 -9 -9 -10 -11 -11 -11 -12 -13 -13 -14 -14 -13 -12 -12 -10 -7 -6 -6 -5 -5 -5 -4 -2 -0 2 4 5 7 7 6 4 2 -0 -1 -2 -1 1 2 3 4 5 5 5 6 6 4 3 0 -3 -6 -8 -9 -8 -6 -5 -3 -3 -3 -2 -2 -4 -3 -2 -1 0 1 2 3 4 5 6 6 5 4 2 0 -2 -5 -6 -5 -4 -1 4 6 7 8 10 13 15 15 14 16 15 13 11 9 6 4 3 3 5 5 6 5 5 3 4 5 5 5 2 0 -1 -1 -2 -5 -8 -10 -10 -10 -8 -6 -6 -10 -17 -20 -20 -19 -13 -9 -4 -0 2 2 3 4 4 4 0 -5 -11 -18 -19 -17 -14 -12 -14 -18 -23 -26 -27 -24 -17 -6 5 13 13 10 7 5 4 1 -2 -5 -8 -12 -16 -20 -23 -26 -25 -22 -19 -16 -14 -15 -19 -24 -29 -32 -34 -36 -37 -40 -40 -39 -37 -34 -35 -32 -28 -24 -25 -27 -30 -32 -32 -32 -31 -30 -27 -23 -18 -10 -6 -6 -11 -17 -21 -23 -21 -20 -22 -27 -34 -42 -47 -47 -45 -44 -39 -36 -35 -35 -34 -34 -32 -30 -31 -31 -31 -28 -24 -17 -19 -29 -41 -54 -62 -60 -57 -54 -51 -51 -52 -53 -52 -51 -49 -50 -52 -53 -49 -44 -41 -41 -43 -46 -47 -46 -43 -39 -41 -44 -49 -54 -55 -53 -50 -46 -42 -38 -35 -34 -34 -40 -44 -48 -51 -51 -49 -46 -43 -39 -36 -34 -33 -34 -36 -39 -43 -45 -45 -41 -39 -14 -13 -13 -13 -15 -16 -14 -12 -10 -11 -11 -9 -7 -7 -11 -10 -9 -9 -10 -11 -12 -12 -12 -9 -8 -6 -6 -8 -9 -8 -8 -8 -9 -9 -10 -11 -10 -9 -8 -8 -8 -9 -10 -12 -12 -11 -9 -8 -9 -8 -8 -6 -6 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -5 -5 -6 -5 -3 1 4 5 5 4 4 4 2 -0 -4 -7 -9 -11 -11 -12 -11 -10 -9 -8 -7 -6 -6 -5 -5 -5 -5 -5 -5 -6 -7 -6 -4 -1 0 -1 -3 -6 -7 -8 -8 -7 -7 -8 -8 -8 -8 -7 -6 -6 -6 -6 -6 -6 -7 -7 -7 -8 -9 -10 -10 -11 -11 -9 -8 -7 -7 -6 -5 -6 -5 -5 -4 -2 1 3 5 7 8 8 7 5 3 2 1 2 2 2 3 3 5 6 7 8 8 8 7 5 3 -0 -3 -5 -5 -3 -3 -2 -2 -2 -3 -4 -5 -4 -3 -1 1 2 2 2 3 4 5 5 5 6 5 3 1 -2 -4 -6 -7 -5 -3 -0 3 6 8 10 12 12 15 15 15 14 12 10 7 4 3 3 4 5 6 6 6 6 5 4 4 3 2 2 2 0 -3 -6 -9 -10 -11 -8 -5 -3 -5 -9 -12 -15 -19 -18 -16 -13 -8 -4 -1 -0 1 3 4 3 1 -4 -9 -13 -13 -11 -6 -6 -9 -15 -22 -29 -33 -30 -21 -6 8 13 13 11 9 7 6 4 1 -2 -7 -11 -16 -20 -25 -25 -25 -24 -22 -18 -17 -18 -21 -25 -29 -32 -34 -35 -36 -37 -38 -37 -36 -38 -36 -32 -26 -23 -25 -28 -30 -31 -33 -32 -31 -30 -28 -25 -18 -11 -6 -6 -11 -17 -22 -22 -21 -21 -24 -30 -38 -45 -48 -47 -44 -43 -40 -37 -35 -34 -34 -32 -31 -31 -32 -32 -30 -27 -21 -20 -23 -30 -43 -53 -59 -60 -57 -53 -49 -49 -51 -52 -51 -50 -49 -50 -52 -51 -46 -43 -41 -43 -46 -49 -50 -47 -42 -40 -41 -46 -53 -56 -55 -52 -48 -44 -40 -36 -33 -31 -34 -39 -45 -50 -51 -51 -48 -45 -42 -39 -36 -34 -33 -35 -38 -42 -45 -47 -45 -42 -15 -14 -13 -14 -14 -14 -11 -10 -10 -12 -10 -8 -8 -10 -14 -12 -12 -11 -11 -11 -11 -11 -10 -8 -9 -9 -9 -10 -9 -8 -8 -9 -10 -10 -10 -10 -9 -8 -8 -8 -8 -9 -10 -12 -12 -11 -9 -8 -8 -8 -7 -6 -6 -5 -5 -4 -4 -4 -4 -4 -3 -2 -2 -2 -2 -2 -3 -4 -3 -0 3 4 4 3 2 0 -2 -6 -9 -11 -12 -12 -11 -11 -9 -8 -6 -5 -5 -4 -4 -4 -4 -4 -3 -3 -3 -4 -6 -6 -5 -3 -1 -2 -5 -8 -11 -12 -11 -10 -9 -8 -8 -8 -7 -6 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -5 -6 -7 -8 -9 -9 -9 -8 -8 -7 -6 -6 -6 -6 -5 -5 -4 -2 -0 2 4 6 7 7 6 5 5 4 4 3 2 2 2 4 6 8 8 9 10 9 8 7 5 2 0 -0 1 2 2 1 0 -2 -3 -4 -5 -3 -1 1 2 1 1 1 2 3 4 5 6 5 4 2 0 -2 -4 -6 -6 -6 -4 -2 -0 3 5 6 8 10 12 13 12 10 8 6 5 3 2 3 4 6 7 7 7 5 4 4 3 3 3 1 -1 -4 -7 -8 -9 -9 -8 -5 -2 -3 -5 -9 -13 -15 -16 -16 -14 -11 -5 -3 -2 -2 -1 1 1 0 -0 -4 -6 -5 -2 0 -2 -7 -14 -23 -29 -32 -29 -20 -8 4 10 11 10 8 8 7 6 3 -1 -5 -10 -15 -21 -23 -26 -27 -26 -23 -19 -16 -16 -19 -24 -30 -33 -33 -32 -34 -36 -37 -37 -38 -38 -36 -30 -24 -23 -26 -28 -30 -33 -33 -32 -31 -30 -28 -24 -18 -9 -5 -5 -11 -18 -22 -22 -21 -21 -24 -33 -40 -46 -50 -48 -45 -42 -40 -38 -35 -35 -34 -33 -32 -32 -32 -31 -28 -25 -23 -21 -23 -32 -46 -56 -60 -59 -54 -50 -48 -49 -51 -51 -50 -49 -48 -50 -51 -48 -44 -41 -42 -45 -48 -51 -51 -46 -42 -40 -43 -52 -57 -58 -56 -51 -46 -42 -38 -35 -31 -30 -35 -42 -48 -51 -52 -50 -47 -44 -42 -39 -36 -34 -34 -37 -40 -44 -47 -47 -45 -15 -14 -13 -13 -12 -11 -9 -9 -11 -11 -10 -10 -10 -12 -17 -14 -12 -10 -9 -9 -10 -10 -11 -10 -11 -11 -10 -9 -9 -9 -10 -10 -11 -11 -10 -9 -9 -8 -8 -8 -8 -9 -11 -13 -13 -12 -10 -8 -8 -7 -7 -7 -6 -5 -4 -4 -4 -4 -3 -3 -2 -1 -0 0 0 0 -1 -2 -2 -1 2 3 3 1 -2 -5 -7 -10 -11 -11 -10 -9 -7 -6 -5 -4 -3 -3 -3 -3 -3 -4 -4 -4 -3 -3 -3 -4 -6 -7 -7 -6 -5 -5 -7 -11 -14 -14 -13 -11 -10 -9 -9 -8 -8 -7 -6 -5 -5 -4 -4 -3 -2 -2 -2 -2 -2 -3 -3 -4 -6 -7 -8 -7 -7 -7 -7 -7 -6 -6 -5 -5 -5 -5 -5 -3 -1 0 2 3 4 4 4 4 3 3 2 1 1 1 2 4 5 6 7 7 6 7 7 6 4 3 2 3 4 5 4 3 1 -0 -2 -3 -2 0 1 0 -0 -0 -0 1 2 2 3 3 4 4 4 3 2 -1 -3 -5 -6 -5 -4 -3 -1 -0 2 3 5 7 8 8 7 7 6 5 2 1 0 1 4 6 7 7 5 4 4 3 3 1 1 0 -1 -3 -6 -9 -11 -9 -4 -2 -1 -3 -6 -10 -14 -15 -15 -15 -11 -7 -5 -5 -4 -4 -3 -1 3 3 2 2 3 5 2 -0 -5 -14 -20 -25 -27 -27 -21 -11 -3 3 6 6 6 7 7 6 3 0 -4 -10 -16 -20 -24 -28 -29 -27 -22 -18 -14 -15 -19 -24 -29 -30 -30 -32 -34 -37 -38 -37 -37 -37 -34 -26 -23 -24 -28 -29 -32 -33 -33 -33 -32 -31 -29 -24 -18 -9 -3 -4 -11 -18 -22 -22 -20 -21 -28 -35 -42 -51 -52 -49 -45 -42 -41 -39 -37 -36 -35 -34 -33 -32 -31 -29 -28 -25 -23 -22 -25 -37 -49 -58 -60 -56 -51 -48 -48 -50 -52 -51 -49 -48 -49 -51 -50 -46 -41 -41 -42 -45 -50 -52 -49 -45 -41 -42 -49 -56 -60 -59 -54 -49 -44 -41 -38 -34 -32 -33 -37 -44 -49 -51 -50 -47 -45 -43 -40 -38 -35 -34 -36 -39 -41 -44 -46 -46 -14 -13 -12 -11 -10 -8 -9 -10 -12 -11 -11 -11 -11 -13 -16 -14 -11 -10 -10 -10 -11 -13 -14 -14 -12 -11 -10 -9 -9 -10 -11 -12 -12 -11 -10 -9 -9 -8 -8 -9 -9 -10 -12 -13 -13 -12 -10 -9 -8 -7 -7 -6 -6 -5 -4 -4 -4 -4 -3 -2 -1 -0 1 1 1 1 -0 -1 -1 -1 1 1 -1 -3 -6 -7 -8 -9 -8 -7 -6 -5 -3 -2 -2 -2 -3 -3 -3 -4 -4 -5 -5 -5 -4 -3 -3 -3 -4 -7 -9 -9 -8 -8 -8 -10 -13 -13 -12 -10 -9 -9 -8 -8 -8 -8 -7 -6 -5 -4 -4 -4 -3 -2 -1 -1 -1 -1 -0 -0 -2 -3 -4 -5 -5 -6 -7 -7 -6 -5 -4 -4 -4 -4 -5 -6 -5 -5 -4 -3 -2 -1 -1 -1 -1 -1 -1 -1 -1 -2 -2 -1 1 2 2 2 2 3 3 3 3 1 0 0 1 3 4 5 5 5 4 3 2 2 1 0 0 -0 -1 -0 0 1 1 1 1 3 4 5 5 4 2 0 -2 -3 -4 -3 -3 -3 -2 -1 -0 1 1 2 4 5 6 6 4 2 -0 -2 -1 2 5 7 6 5 5 4 4 3 4 4 4 2 -2 -6 -10 -11 -6 -3 -1 0 -0 -4 -8 -12 -14 -16 -15 -13 -10 -7 -5 -5 -6 -4 1 7 9 9 8 8 7 6 4 -3 -9 -14 -19 -24 -26 -23 -17 -10 -3 -0 2 3 3 3 5 4 1 -4 -10 -15 -20 -25 -28 -28 -25 -21 -17 -15 -15 -18 -22 -25 -28 -31 -33 -35 -36 -36 -35 -35 -36 -28 -24 -25 -28 -29 -31 -33 -34 -34 -34 -33 -32 -29 -25 -17 -7 -0 -2 -12 -18 -21 -21 -22 -26 -31 -38 -47 -53 -53 -50 -46 -44 -42 -40 -38 -37 -36 -34 -33 -31 -29 -28 -27 -25 -24 -23 -29 -41 -52 -59 -57 -53 -48 -46 -48 -51 -51 -51 -50 -50 -52 -52 -48 -42 -41 -41 -43 -46 -50 -51 -49 -47 -44 -48 -53 -58 -59 -56 -51 -47 -44 -41 -38 -34 -32 -33 -38 -45 -48 -49 -48 -46 -44 -42 -39 -37 -36 -36 -38 -40 -41 -44 -45 -12 -12 -10 -9 -8 -8 -11 -12 -12 -12 -12 -11 -12 -13 -14 -12 -11 -11 -11 -12 -13 -14 -15 -14 -12 -10 -10 -10 -10 -11 -12 -13 -13 -12 -10 -10 -9 -9 -9 -10 -10 -12 -13 -14 -13 -11 -10 -9 -8 -7 -6 -6 -5 -5 -5 -4 -4 -4 -3 -2 -1 -0 0 0 0 0 -0 -1 -1 -1 -1 -2 -4 -5 -6 -5 -5 -5 -5 -4 -3 -3 -4 -4 -5 -5 -6 -6 -6 -6 -5 -6 -6 -7 -7 -6 -6 -6 -8 -10 -12 -11 -10 -8 -7 -8 -8 -8 -8 -7 -7 -6 -6 -6 -6 -6 -6 -5 -5 -4 -5 -5 -4 -3 -2 -1 -0 0 1 1 1 1 -0 -1 -2 -3 -4 -5 -5 -4 -3 -2 -2 -2 -3 -4 -5 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -4 -5 -5 -5 -4 -3 -3 -3 -3 -3 -2 -2 -1 -2 -3 -4 -5 -4 -2 1 4 5 5 4 4 4 3 3 2 2 -0 -1 0 1 0 -0 -0 0 1 3 4 5 4 3 2 1 -1 -2 -2 -2 -2 -3 -3 -3 -3 -1 0 2 3 3 1 -0 -2 -3 -4 -3 -1 1 3 4 4 4 5 7 7 6 6 5 3 -1 -5 -8 -7 -5 -3 -1 1 -0 -4 -8 -11 -14 -16 -18 -18 -14 -8 -5 -5 -5 -2 5 10 12 10 11 12 13 13 9 3 -2 -8 -16 -22 -26 -26 -22 -15 -8 -4 -2 -1 -1 3 5 5 3 -1 -7 -14 -20 -24 -26 -26 -24 -21 -17 -14 -13 -17 -20 -25 -29 -32 -35 -34 -35 -35 -34 -34 -29 -27 -27 -30 -30 -32 -34 -35 -36 -36 -35 -34 -32 -30 -23 -12 -1 5 -2 -11 -18 -21 -22 -24 -28 -34 -42 -51 -55 -54 -50 -47 -45 -42 -40 -38 -37 -36 -34 -32 -31 -29 -28 -27 -26 -23 -25 -32 -42 -54 -57 -54 -50 -46 -46 -49 -51 -52 -51 -52 -53 -52 -50 -45 -41 -41 -42 -43 -48 -51 -52 -51 -50 -49 -51 -53 -56 -55 -52 -48 -46 -44 -41 -37 -33 -31 -34 -40 -45 -48 -49 -48 -46 -44 -42 -41 -39 -37 -37 -39 -40 -41 -44 -11 -9 -8 -8 -8 -10 -12 -13 -13 -12 -11 -11 -12 -12 -11 -10 -11 -12 -13 -14 -13 -12 -12 -12 -11 -11 -11 -11 -11 -12 -13 -13 -12 -12 -11 -10 -10 -10 -10 -11 -13 -14 -15 -14 -12 -11 -9 -8 -7 -6 -6 -6 -6 -6 -6 -5 -4 -3 -3 -2 -1 -1 -1 -1 -0 -0 -0 -0 -1 -2 -3 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -5 -6 -7 -8 -10 -10 -10 -10 -9 -8 -8 -8 -9 -10 -10 -10 -10 -11 -12 -12 -10 -8 -6 -5 -4 -3 -2 -2 -2 -1 -1 -1 -1 -2 -2 -3 -3 -3 -4 -4 -4 -3 -2 -1 -0 1 1 2 2 3 3 3 3 2 2 0 -1 -2 -2 -2 -2 -1 -0 -0 -1 -2 -3 -3 -4 -5 -6 -7 -8 -8 -8 -9 -8 -7 -7 -6 -6 -5 -5 -5 -6 -6 -6 -6 -6 -5 -5 -6 -8 -9 -10 -7 -4 -1 0 3 3 4 4 3 3 3 3 2 1 1 1 2 3 2 0 -0 0 -0 1 2 3 4 3 2 1 0 0 -0 -1 -2 -3 -3 -2 -1 -0 1 0 0 -0 -1 -2 -5 -6 -6 -5 -2 1 3 5 7 8 7 6 7 7 7 6 3 -1 -3 -4 -5 -3 -0 1 -0 -3 -7 -10 -14 -18 -22 -20 -14 -8 -4 -2 -2 2 6 8 9 12 15 18 19 18 13 9 3 -4 -12 -19 -25 -27 -22 -15 -10 -8 -8 -8 -3 3 6 7 5 1 -6 -13 -19 -22 -25 -25 -22 -18 -13 -11 -13 -16 -22 -27 -31 -34 -32 -32 -33 -33 -33 -31 -30 -30 -30 -32 -33 -35 -37 -37 -37 -37 -36 -35 -33 -27 -18 -6 4 5 -2 -11 -19 -22 -25 -28 -31 -38 -47 -54 -57 -55 -51 -48 -45 -42 -38 -37 -35 -34 -33 -31 -30 -29 -29 -27 -24 -23 -25 -32 -46 -53 -55 -52 -46 -44 -46 -50 -52 -53 -53 -53 -52 -51 -48 -43 -41 -41 -42 -46 -50 -53 -53 -51 -48 -47 -48 -50 -52 -52 -51 -49 -46 -42 -39 -36 -32 -32 -36 -42 -47 -50 -50 -49 -47 -46 -44 -41 -39 -37 -38 -38 -39 -41 -8 -7 -7 -8 -10 -12 -13 -13 -13 -12 -11 -12 -11 -10 -10 -11 -12 -13 -14 -13 -10 -9 -8 -8 -10 -12 -13 -12 -11 -13 -14 -13 -12 -12 -11 -10 -10 -11 -13 -14 -15 -15 -15 -13 -11 -10 -8 -7 -6 -6 -6 -6 -6 -6 -6 -5 -4 -4 -3 -3 -3 -2 -2 -1 -0 -0 0 -1 -2 -3 -4 -4 -4 -4 -4 -4 -4 -4 -5 -5 -6 -8 -8 -9 -10 -11 -11 -12 -11 -10 -9 -9 -9 -10 -11 -12 -11 -11 -10 -9 -8 -6 -4 -3 -2 -0 1 2 2 3 3 3 3 2 2 1 0 0 0 0 -1 -2 -2 -1 -0 1 2 3 3 3 3 3 4 5 5 5 5 4 3 2 1 1 0 0 1 1 2 2 1 0 -0 -1 -2 -3 -5 -6 -8 -8 -8 -8 -7 -6 -5 -4 -4 -5 -5 -5 -6 -6 -6 -5 -6 -7 -9 -11 -9 -7 -6 -5 -2 -1 0 1 1 0 1 1 2 2 2 3 2 3 3 2 1 0 -1 1 2 3 3 3 3 2 2 2 1 0 -0 -1 -1 -0 0 0 -0 -1 -2 -1 -1 -2 -4 -6 -7 -9 -7 -4 -1 1 4 6 6 6 7 7 9 11 10 7 3 1 -1 -2 -1 1 3 2 -3 -6 -10 -15 -21 -22 -19 -14 -7 1 2 3 5 6 8 11 14 18 21 20 18 16 12 8 1 -8 -17 -24 -25 -19 -15 -13 -14 -14 -9 -3 4 9 10 8 3 -4 -9 -14 -19 -22 -20 -18 -14 -11 -11 -14 -18 -23 -27 -32 -31 -31 -31 -32 -31 -31 -31 -30 -30 -33 -35 -36 -38 -38 -38 -38 -37 -36 -35 -30 -23 -14 -2 5 4 -4 -13 -20 -25 -28 -30 -35 -43 -51 -57 -58 -54 -51 -48 -44 -39 -37 -36 -36 -35 -33 -32 -32 -31 -28 -26 -24 -22 -24 -36 -47 -54 -54 -49 -45 -45 -47 -51 -52 -52 -52 -52 -53 -51 -47 -43 -41 -42 -43 -47 -52 -54 -52 -50 -48 -47 -48 -51 -54 -55 -53 -49 -45 -42 -39 -35 -32 -34 -38 -45 -50 -52 -52 -51 -49 -46 -43 -40 -38 -38 -38 -38 -39 -6 -6 -8 -10 -12 -13 -13 -13 -12 -11 -12 -11 -10 -10 -11 -12 -12 -12 -12 -10 -8 -7 -7 -7 -8 -11 -12 -12 -12 -14 -15 -14 -12 -12 -11 -11 -11 -13 -15 -16 -16 -15 -14 -12 -10 -8 -7 -6 -6 -6 -7 -7 -7 -6 -6 -5 -5 -5 -5 -5 -4 -3 -2 -1 -0 0 0 -1 -3 -4 -4 -4 -3 -4 -4 -4 -4 -5 -6 -8 -9 -10 -10 -10 -10 -10 -9 -9 -9 -9 -9 -9 -9 -10 -11 -11 -10 -9 -7 -5 -3 -1 -1 0 1 2 4 4 4 5 5 5 4 4 3 3 2 3 3 3 2 1 -0 -0 0 2 3 3 4 3 3 3 4 4 5 7 7 7 7 7 6 5 4 4 4 4 4 5 4 5 5 4 4 3 2 0 -2 -4 -6 -7 -7 -6 -5 -3 -2 -1 -1 -1 -1 -2 -3 -2 -2 -3 -4 -7 -7 -7 -7 -8 -6 -6 -4 -2 -2 -3 -4 -3 -3 -1 1 3 3 4 4 4 3 2 1 1 1 2 3 3 3 2 2 2 1 1 2 1 1 2 2 1 0 -2 -3 -3 -2 -2 -3 -5 -7 -9 -9 -8 -6 -3 -0 2 3 4 5 6 8 11 13 13 11 8 5 2 2 3 4 5 1 -2 -6 -11 -17 -18 -19 -18 -13 -2 3 8 10 10 10 10 11 13 15 18 20 20 19 17 12 5 -5 -15 -20 -20 -18 -17 -19 -18 -15 -10 -3 5 9 9 7 4 1 -5 -11 -15 -17 -17 -15 -13 -14 -14 -16 -18 -21 -28 -30 -30 -30 -30 -29 -29 -29 -28 -28 -32 -34 -36 -39 -40 -40 -40 -39 -38 -37 -33 -27 -22 -10 0 4 2 -6 -15 -22 -28 -31 -34 -38 -45 -54 -60 -58 -54 -50 -46 -40 -38 -38 -39 -38 -36 -35 -34 -32 -30 -28 -26 -23 -21 -29 -41 -51 -55 -52 -47 -44 -45 -49 -51 -53 -53 -53 -53 -53 -51 -46 -41 -42 -41 -43 -47 -51 -52 -51 -49 -46 -45 -48 -52 -56 -57 -54 -49 -46 -42 -39 -35 -33 -35 -41 -48 -53 -54 -54 -51 -48 -44 -41 -39 -37 -38 -38 -39 -6 -8 -11 -12 -13 -13 -12 -11 -11 -12 -12 -10 -10 -11 -12 -12 -12 -11 -10 -9 -8 -7 -6 -6 -7 -8 -9 -11 -13 -15 -14 -13 -12 -11 -11 -11 -12 -14 -15 -15 -15 -14 -13 -10 -8 -7 -6 -6 -7 -7 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -5 -3 -2 -0 0 1 -1 -3 -4 -5 -5 -4 -5 -5 -6 -6 -7 -8 -9 -11 -12 -12 -11 -9 -8 -7 -6 -5 -5 -5 -6 -7 -8 -8 -8 -8 -7 -6 -3 -1 0 -0 0 1 2 2 3 3 3 4 4 4 3 4 4 4 4 4 4 4 3 2 1 2 2 3 4 4 4 4 4 3 3 4 5 6 7 7 8 9 9 9 9 8 7 6 5 5 6 6 7 7 8 8 7 7 6 3 1 -2 -4 -6 -6 -5 -3 -1 1 2 3 2 2 2 1 1 0 -2 -2 -4 -5 -5 -6 -6 -6 -4 -3 -4 -5 -6 -6 -4 -1 1 3 3 4 4 4 4 2 2 1 2 2 3 3 2 1 1 -1 -0 1 2 2 2 2 2 0 -0 -1 -2 -2 -3 -2 -3 -5 -6 -8 -9 -9 -7 -5 -2 -0 1 3 4 6 9 11 13 13 13 12 8 8 7 6 6 5 3 -1 -6 -10 -11 -14 -18 -18 -11 -0 10 15 14 11 10 10 10 11 13 20 25 24 21 18 14 7 -2 -10 -15 -19 -21 -22 -21 -20 -17 -11 -3 3 6 7 8 9 5 -2 -7 -13 -15 -14 -13 -15 -15 -16 -16 -18 -22 -26 -27 -28 -29 -26 -26 -27 -27 -28 -30 -31 -33 -37 -39 -41 -42 -41 -39 -38 -35 -31 -27 -17 -7 1 5 1 -8 -17 -24 -29 -33 -36 -41 -49 -58 -59 -56 -52 -48 -42 -39 -39 -41 -40 -39 -38 -36 -33 -30 -29 -28 -26 -22 -24 -33 -45 -53 -53 -49 -45 -42 -45 -49 -51 -53 -52 -52 -53 -53 -50 -43 -42 -40 -40 -40 -46 -51 -53 -51 -48 -46 -46 -49 -55 -59 -58 -54 -50 -46 -43 -38 -35 -33 -37 -44 -50 -54 -56 -53 -49 -46 -42 -39 -38 -38 -39 -39 -10 -12 -13 -13 -12 -12 -10 -11 -12 -12 -11 -10 -11 -11 -12 -12 -11 -10 -9 -9 -9 -7 -6 -6 -6 -7 -8 -10 -13 -14 -13 -12 -11 -11 -11 -12 -13 -14 -15 -14 -13 -13 -11 -8 -7 -6 -6 -6 -7 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -3 -1 0 -0 -0 -2 -4 -6 -7 -7 -7 -8 -9 -9 -10 -11 -12 -13 -13 -13 -11 -10 -7 -5 -4 -2 -2 -2 -2 -3 -4 -4 -4 -4 -3 -3 -1 -1 -1 -1 -3 -2 -1 -1 -1 -1 -1 -1 -0 1 2 3 3 4 4 4 4 4 4 3 3 3 4 4 5 5 5 5 5 5 4 4 4 4 4 4 5 6 8 10 11 12 11 10 8 6 6 6 7 9 9 10 10 11 12 11 10 8 6 2 -1 -4 -6 -6 -5 -3 0 2 4 5 4 3 2 1 1 2 2 1 0 -2 -4 -5 -4 -3 -2 -3 -5 -6 -5 -2 -1 1 1 3 3 4 4 4 3 2 2 2 3 3 3 2 1 -0 0 2 2 3 3 3 3 2 2 1 -0 -2 -2 -2 -1 -2 -3 -5 -7 -9 -10 -7 -5 -3 -2 -0 0 2 5 7 10 13 14 15 12 11 10 9 6 6 5 2 -2 -5 -5 -9 -14 -17 -15 -5 6 14 15 13 12 11 9 9 10 17 25 29 24 21 19 15 7 -1 -8 -15 -20 -22 -21 -22 -21 -17 -12 -6 -2 1 7 12 12 8 3 -5 -9 -11 -12 -15 -16 -16 -15 -15 -16 -19 -23 -25 -26 -25 -24 -25 -26 -28 -27 -28 -30 -32 -38 -41 -43 -42 -41 -40 -37 -33 -30 -23 -14 -4 3 6 -0 -9 -18 -24 -29 -33 -37 -42 -51 -56 -58 -55 -49 -45 -41 -40 -41 -39 -40 -40 -38 -35 -30 -29 -29 -28 -24 -21 -25 -36 -49 -53 -51 -46 -41 -40 -44 -48 -51 -52 -52 -52 -53 -52 -47 -42 -40 -39 -36 -42 -49 -54 -55 -52 -47 -44 -45 -51 -58 -60 -58 -54 -49 -45 -41 -38 -34 -35 -40 -47 -53 -56 -55 -51 -47 -44 -40 -39 -39 -39 -40 -13 -13 -13 -12 -11 -10 -10 -11 -12 -11 -10 -10 -11 -12 -11 -10 -10 -10 -9 -9 -9 -7 -6 -6 -6 -7 -8 -10 -12 -12 -12 -12 -11 -10 -11 -12 -13 -13 -13 -12 -11 -10 -9 -7 -6 -6 -6 -6 -7 -6 -6 -5 -5 -5 -5 -5 -6 -6 -7 -6 -4 -2 -0 -0 -1 -2 -5 -7 -8 -9 -10 -11 -12 -13 -14 -14 -15 -15 -14 -13 -11 -9 -6 -3 -1 0 1 -0 -1 -1 -1 -1 -0 1 1 1 1 1 -1 -3 -5 -7 -5 -4 -4 -4 -4 -4 -4 -4 -2 0 2 3 4 4 4 4 4 3 3 3 4 5 5 5 6 6 7 7 7 7 6 6 5 4 3 3 4 7 9 11 12 12 10 9 7 6 5 7 9 11 12 13 13 14 15 14 13 11 9 6 2 -2 -5 -6 -6 -5 -3 -0 2 3 3 3 3 4 4 4 4 4 3 1 -2 -2 -1 -0 -0 -1 -2 -2 -2 -1 -2 -2 -0 1 3 4 4 4 3 3 2 3 3 3 3 2 1 1 1 1 2 3 3 3 2 2 2 1 1 -0 -1 -1 0 -0 -1 -3 -5 -8 -8 -7 -6 -5 -3 -3 -1 1 2 5 9 12 14 13 12 12 10 6 7 6 4 1 -0 -0 -3 -8 -11 -11 -6 1 8 13 14 13 12 10 9 8 13 22 31 26 23 22 21 14 8 1 -7 -14 -18 -20 -21 -21 -19 -17 -15 -11 -6 1 11 16 16 12 5 -2 -7 -9 -13 -16 -17 -17 -17 -16 -16 -18 -22 -23 -23 -22 -22 -24 -26 -26 -26 -28 -30 -36 -41 -44 -44 -42 -40 -37 -35 -32 -28 -21 -11 -1 10 8 -0 -10 -18 -24 -29 -34 -36 -42 -49 -54 -55 -53 -48 -44 -40 -40 -38 -39 -40 -40 -37 -31 -29 -30 -30 -27 -21 -20 -28 -43 -52 -54 -50 -42 -38 -40 -44 -48 -51 -51 -52 -52 -53 -50 -45 -41 -40 -39 -40 -46 -52 -54 -52 -46 -43 -44 -49 -56 -59 -59 -57 -53 -48 -44 -41 -38 -35 -37 -42 -50 -55 -56 -54 -50 -45 -42 -39 -38 -39 -40 -14 -13 -12 -10 -9 -9 -11 -11 -11 -10 -10 -11 -12 -12 -10 -9 -9 -9 -9 -8 -8 -7 -7 -7 -7 -7 -8 -9 -10 -11 -11 -12 -11 -10 -10 -11 -12 -11 -11 -9 -8 -7 -7 -6 -6 -6 -6 -6 -5 -5 -4 -3 -3 -3 -4 -5 -6 -7 -7 -6 -3 -1 -0 -1 -4 -7 -9 -11 -12 -13 -13 -14 -14 -15 -15 -15 -14 -14 -12 -10 -7 -5 -2 0 2 2 1 -0 -1 -0 1 2 3 4 3 2 -0 -3 -5 -7 -8 -8 -6 -4 -4 -5 -6 -6 -5 -4 -3 -1 1 2 3 3 3 3 3 4 4 5 5 5 6 6 7 8 9 9 9 10 9 8 7 6 5 4 5 7 8 10 11 11 10 9 7 6 4 6 8 11 12 13 13 14 15 15 14 13 12 11 8 4 0 -3 -5 -6 -6 -4 -2 -1 1 3 3 5 5 4 4 4 5 4 2 1 -0 0 1 2 2 2 1 -0 -2 -3 -2 -1 0 2 3 4 4 3 3 3 3 3 3 3 3 3 2 1 0 1 2 2 2 2 2 2 3 2 2 1 1 1 1 -1 -3 -4 -6 -7 -7 -6 -5 -4 -4 -3 -2 0 3 7 9 10 10 10 9 7 8 7 5 3 3 2 0 -1 -2 -0 2 3 4 11 13 12 10 10 10 10 12 17 30 28 26 26 27 19 15 10 3 -5 -11 -16 -19 -20 -20 -20 -19 -17 -12 -5 7 16 20 18 13 6 -1 -4 -10 -14 -16 -17 -18 -17 -16 -16 -17 -19 -20 -19 -19 -20 -22 -25 -27 -29 -30 -34 -39 -41 -43 -41 -40 -38 -37 -33 -32 -27 -19 -9 9 14 10 -1 -11 -18 -24 -29 -31 -37 -43 -49 -53 -53 -50 -46 -41 -38 -38 -39 -41 -41 -38 -34 -32 -33 -33 -30 -24 -20 -23 -35 -47 -54 -53 -47 -39 -38 -40 -45 -48 -50 -51 -51 -52 -52 -48 -45 -42 -41 -38 -39 -43 -47 -49 -48 -46 -45 -48 -54 -58 -60 -59 -56 -52 -48 -44 -42 -39 -37 -39 -45 -52 -56 -56 -53 -48 -43 -40 -38 -38 -40 -14 -12 -11 -10 -10 -10 -11 -11 -10 -10 -11 -12 -13 -12 -10 -9 -9 -9 -9 -8 -7 -7 -8 -8 -7 -8 -8 -8 -9 -10 -11 -10 -9 -9 -9 -10 -10 -10 -9 -8 -7 -6 -6 -6 -6 -6 -5 -4 -3 -3 -2 -2 -3 -3 -5 -7 -8 -8 -8 -6 -3 -2 -2 -5 -9 -12 -12 -13 -14 -14 -13 -13 -12 -12 -12 -11 -11 -10 -8 -6 -4 -1 0 1 1 -0 -1 -1 0 1 2 3 3 2 -0 -2 -5 -6 -7 -7 -6 -5 -2 -2 -3 -5 -7 -7 -6 -5 -4 -3 -3 -2 -1 -0 1 3 4 5 6 7 7 7 7 7 8 9 10 11 11 12 12 12 11 10 9 9 8 8 9 9 8 8 9 9 7 5 3 4 6 9 11 11 12 12 13 12 12 12 12 12 11 9 6 3 0 -3 -5 -6 -5 -4 -2 -0 1 3 4 4 5 6 6 6 5 4 2 1 1 3 5 6 5 3 0 -2 -3 -3 -2 -1 1 2 3 3 3 3 3 3 4 4 4 4 4 2 1 0 1 1 1 1 2 3 5 5 4 4 2 2 1 1 0 -1 -3 -5 -7 -7 -5 -4 -4 -4 -4 -4 -2 0 2 4 5 6 6 8 7 6 3 2 5 6 6 6 5 14 18 15 7 8 9 9 9 11 13 13 12 14 28 29 29 30 33 24 19 16 13 6 -3 -10 -15 -18 -19 -19 -18 -17 -15 -9 1 10 15 17 17 14 8 3 -4 -9 -13 -16 -18 -18 -18 -17 -16 -17 -17 -16 -15 -16 -20 -25 -29 -32 -32 -34 -36 -37 -39 -37 -37 -38 -38 -35 -34 -31 -26 -19 -2 11 15 10 -3 -11 -18 -25 -27 -33 -39 -45 -50 -53 -52 -49 -44 -40 -39 -39 -40 -42 -40 -39 -38 -36 -34 -32 -28 -24 -21 -28 -40 -51 -55 -51 -43 -38 -37 -40 -44 -47 -49 -49 -51 -52 -52 -49 -45 -44 -39 -35 -35 -41 -47 -48 -47 -45 -48 -52 -57 -60 -60 -59 -56 -52 -48 -46 -43 -41 -39 -42 -49 -54 -56 -55 -51 -45 -41 -38 -38 -40 -12 -11 -10 -10 -11 -11 -10 -10 -10 -11 -12 -13 -13 -12 -10 -9 -9 -9 -9 -8 -7 -7 -8 -9 -8 -8 -8 -8 -9 -10 -10 -9 -8 -8 -8 -9 -10 -10 -9 -8 -8 -7 -6 -6 -6 -5 -5 -3 -2 -1 -2 -2 -4 -5 -6 -7 -8 -7 -6 -4 -3 -3 -6 -9 -12 -13 -13 -13 -13 -13 -12 -11 -10 -9 -9 -8 -7 -6 -5 -3 -2 -1 -0 -0 -1 -2 -1 -0 1 2 1 -0 -2 -5 -7 -8 -8 -8 -7 -6 -4 -2 -1 -2 -4 -7 -8 -9 -9 -8 -6 -7 -6 -6 -5 -3 -1 0 2 3 5 6 7 8 9 10 10 10 11 12 12 13 14 14 14 13 12 11 11 10 9 9 8 8 8 8 6 4 2 3 4 7 8 9 9 8 8 8 8 8 9 10 10 10 9 7 5 2 -1 -3 -5 -6 -5 -4 -2 0 2 3 4 6 7 7 7 6 5 3 2 3 4 6 7 6 5 2 -1 -2 -3 -2 -1 -0 1 2 3 3 4 4 4 4 4 5 5 4 3 1 0 0 -0 1 2 3 5 5 5 5 5 3 3 2 1 0 -1 -3 -5 -4 -4 -3 -3 -3 -4 -5 -5 -4 -4 -2 -1 0 1 5 5 3 1 1 5 8 10 12 11 21 26 22 11 8 7 6 8 11 17 17 13 14 27 30 31 33 36 28 23 21 22 18 8 -1 -9 -15 -17 -17 -17 -15 -14 -12 -8 -2 5 11 16 18 16 12 3 -3 -7 -11 -14 -15 -16 -17 -16 -17 -16 -14 -12 -14 -20 -26 -31 -35 -35 -35 -34 -33 -32 -29 -30 -36 -39 -37 -35 -33 -29 -26 -14 -1 10 15 5 -4 -12 -20 -24 -29 -35 -41 -46 -51 -53 -52 -48 -44 -42 -41 -42 -44 -44 -43 -41 -37 -33 -33 -31 -29 -24 -24 -32 -44 -54 -53 -47 -39 -34 -34 -39 -43 -46 -48 -49 -52 -53 -53 -49 -46 -42 -37 -32 -37 -42 -46 -48 -47 -48 -50 -54 -58 -60 -61 -60 -57 -53 -49 -46 -44 -42 -42 -46 -50 -55 -56 -52 -47 -42 -39 -38 -40 -11 -10 -10 -11 -10 -10 -10 -10 -10 -11 -13 -14 -14 -12 -11 -9 -9 -9 -9 -8 -8 -9 -10 -10 -8 -8 -8 -9 -9 -9 -9 -8 -8 -8 -8 -9 -9 -10 -10 -9 -8 -7 -6 -5 -5 -4 -3 -2 -1 -1 -2 -3 -4 -6 -7 -7 -6 -4 -3 -2 -3 -6 -9 -11 -12 -13 -12 -12 -11 -10 -9 -9 -8 -8 -7 -6 -5 -4 -3 -2 -1 -1 -2 -2 -2 -2 -1 -0 0 -1 -3 -5 -8 -10 -11 -10 -9 -8 -6 -3 -2 -2 -2 -3 -5 -6 -7 -8 -8 -8 -7 -6 -6 -6 -5 -4 -3 -3 -3 -3 -3 -1 1 3 5 7 8 9 10 12 13 14 15 16 16 15 13 12 11 11 11 11 10 10 9 8 7 4 2 2 3 4 5 5 6 5 5 5 5 5 6 7 7 8 8 9 8 7 5 2 -1 -3 -4 -5 -4 -3 -1 0 2 5 6 7 8 7 7 5 4 4 4 5 7 7 8 6 3 1 -1 -1 -1 -1 0 1 2 3 4 4 4 4 4 5 6 7 6 4 2 1 -0 0 1 2 3 4 5 6 7 6 5 3 2 1 0 -1 -1 -2 -2 -2 -2 -2 -1 -3 -4 -5 -6 -6 -6 -5 -4 -1 0 -1 -2 -1 4 8 11 14 15 21 24 22 15 13 11 10 9 9 17 18 15 12 27 32 34 35 37 30 26 26 29 27 20 10 -1 -10 -12 -12 -12 -12 -13 -13 -11 -9 -4 5 14 20 23 21 13 6 -0 -5 -7 -10 -13 -15 -16 -17 -17 -14 -12 -15 -22 -28 -32 -36 -38 -37 -34 -32 -22 -17 -21 -33 -38 -37 -35 -33 -30 -28 -21 -10 3 13 11 4 -6 -15 -21 -26 -31 -38 -43 -48 -52 -55 -54 -49 -46 -45 -45 -47 -47 -46 -44 -39 -34 -33 -33 -32 -29 -24 -25 -34 -50 -54 -50 -42 -34 -29 -34 -39 -44 -47 -48 -50 -52 -54 -52 -48 -44 -40 -34 -32 -38 -45 -51 -51 -51 -51 -52 -55 -60 -63 -63 -61 -57 -53 -49 -47 -45 -44 -44 -47 -51 -54 -53 -49 -44 -40 -39 -40 -10 -10 -11 -10 -9 -9 -10 -10 -11 -12 -13 -13 -13 -12 -10 -9 -9 -10 -10 -9 -10 -13 -13 -11 -9 -8 -9 -9 -8 -8 -8 -8 -7 -8 -8 -8 -8 -8 -8 -8 -7 -6 -5 -4 -3 -3 -3 -2 -2 -2 -2 -3 -4 -5 -5 -4 -3 -2 -1 -2 -5 -8 -10 -11 -12 -11 -10 -10 -9 -8 -8 -7 -7 -6 -6 -5 -4 -3 -2 -2 -2 -3 -3 -2 -1 -1 -1 -2 -4 -5 -8 -10 -11 -11 -11 -9 -8 -6 -4 -3 -3 -4 -4 -4 -3 -2 -2 -3 -4 -4 -3 -2 -2 -2 -3 -3 -4 -6 -8 -10 -10 -10 -8 -6 -4 -1 1 2 4 7 10 13 15 17 17 15 14 12 10 10 11 12 11 10 9 7 6 5 3 2 2 2 3 5 6 7 7 7 7 7 6 6 6 7 7 8 9 9 9 7 5 1 -1 -2 -4 -3 -3 -2 0 3 5 7 8 9 9 8 7 6 5 5 6 6 8 8 6 4 2 0 -0 -1 -0 0 1 2 3 4 4 4 5 5 5 7 7 6 4 3 1 0 1 1 1 2 3 5 6 7 7 6 5 3 2 1 1 -0 -1 -1 0 1 1 -0 -1 -2 -4 -6 -7 -8 -9 -8 -6 -5 -5 -3 1 5 8 11 15 18 19 19 19 19 18 16 14 10 16 18 15 11 23 32 38 39 40 33 30 30 31 31 29 21 10 0 -4 -5 -5 -6 -8 -8 -9 -9 -9 -2 9 21 27 25 21 16 9 4 1 -3 -8 -11 -14 -17 -18 -17 -13 -17 -23 -29 -31 -34 -37 -38 -36 -35 -19 -11 -13 -25 -31 -33 -34 -34 -30 -27 -22 -13 -3 10 13 10 3 -6 -14 -21 -28 -35 -40 -46 -52 -58 -59 -55 -52 -49 -48 -48 -48 -48 -47 -43 -37 -34 -35 -35 -33 -27 -21 -22 -41 -52 -52 -46 -36 -27 -28 -33 -39 -44 -46 -48 -51 -53 -54 -50 -46 -43 -39 -32 -34 -42 -51 -55 -56 -56 -55 -56 -60 -64 -66 -65 -60 -56 -52 -49 -47 -45 -44 -45 -47 -51 -52 -50 -46 -43 -41 -41 -10 -12 -11 -10 -9 -9 -10 -11 -11 -12 -13 -13 -13 -12 -10 -9 -10 -10 -10 -11 -12 -14 -12 -9 -8 -8 -9 -9 -8 -8 -8 -7 -7 -7 -7 -7 -7 -6 -6 -6 -6 -5 -4 -3 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -2 -1 -0 -0 -2 -4 -7 -9 -10 -10 -10 -9 -8 -7 -7 -7 -7 -6 -6 -5 -4 -3 -2 -1 -1 -2 -3 -4 -4 -2 -1 -2 -4 -7 -9 -9 -10 -11 -11 -9 -8 -7 -5 -4 -4 -5 -7 -7 -5 -2 1 3 2 2 3 4 4 5 4 3 1 -1 -3 -6 -9 -11 -13 -14 -14 -13 -12 -9 -8 -6 -5 -3 1 5 9 13 14 14 13 11 10 10 11 11 10 9 7 6 4 3 2 1 1 2 4 6 7 9 10 10 10 10 10 10 9 9 9 10 10 10 11 11 10 7 4 2 0 -0 -1 -1 -1 1 3 5 7 9 10 10 10 9 7 6 5 5 7 8 8 7 6 4 2 0 0 0 1 2 2 3 4 4 4 5 5 6 7 7 7 6 5 3 2 1 1 1 2 2 4 6 8 8 8 6 4 3 2 1 1 1 2 3 3 3 3 2 0 -2 -5 -7 -9 -11 -11 -10 -9 -6 -3 1 3 6 10 12 13 15 21 22 22 21 18 16 19 20 18 17 24 33 41 44 43 39 36 34 31 31 31 29 23 13 8 4 2 0 -0 -1 -3 -6 -9 -7 0 12 23 24 25 22 17 11 8 3 -1 -4 -9 -12 -16 -18 -16 -18 -23 -28 -29 -30 -34 -35 -35 -34 -26 -18 -13 -10 -14 -21 -29 -34 -32 -27 -21 -15 -9 1 9 12 10 1 -9 -17 -24 -32 -40 -46 -53 -59 -61 -60 -57 -53 -51 -49 -49 -49 -49 -46 -41 -37 -36 -37 -35 -31 -21 -10 -28 -45 -52 -49 -40 -29 -24 -25 -31 -38 -44 -48 -50 -52 -54 -54 -51 -46 -44 -37 -34 -37 -47 -54 -57 -58 -55 -55 -58 -63 -67 -67 -63 -58 -54 -51 -47 -44 -43 -43 -45 -48 -50 -51 -50 -47 -45 -43 -11 -12 -10 -9 -9 -10 -11 -11 -12 -12 -13 -13 -13 -11 -9 -8 -10 -10 -10 -11 -13 -13 -10 -7 -7 -8 -9 -8 -8 -8 -8 -7 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -3 -2 -2 -3 -3 -4 -4 -4 -4 -3 -2 -0 1 1 0 -2 -5 -7 -9 -8 -7 -7 -7 -6 -6 -5 -5 -6 -6 -5 -5 -4 -3 -2 -1 -0 -1 -2 -3 -4 -4 -2 -3 -6 -9 -12 -13 -11 -10 -9 -8 -7 -6 -5 -4 -5 -6 -8 -9 -6 -2 2 5 6 5 6 7 9 9 8 6 4 2 -0 -2 -4 -5 -7 -9 -11 -12 -12 -13 -12 -12 -12 -11 -11 -8 -5 -1 3 6 8 9 9 9 9 9 9 8 7 6 5 4 3 2 2 2 4 5 7 8 9 10 11 12 12 12 12 12 12 12 12 13 14 14 14 14 12 10 8 6 5 4 2 1 1 2 3 5 8 10 12 12 12 10 8 7 6 7 8 8 9 9 7 4 3 1 1 1 2 2 3 3 4 4 5 5 6 6 7 8 9 8 7 6 4 3 2 1 1 1 3 6 9 10 8 6 5 5 4 3 3 3 4 4 5 5 6 6 4 1 -2 -5 -9 -10 -11 -11 -9 -6 -3 0 2 3 5 8 12 21 23 24 24 23 23 24 23 22 26 30 36 42 46 45 41 38 36 35 31 30 30 30 26 20 14 9 7 7 7 4 0 -6 -10 -9 -3 8 18 24 27 26 19 13 8 5 3 -1 -5 -11 -17 -18 -19 -22 -25 -23 -26 -29 -33 -33 -33 -29 -23 -13 4 6 -5 -19 -30 -33 -29 -24 -19 -16 -11 0 11 15 9 -2 -11 -19 -27 -35 -44 -51 -58 -62 -63 -60 -56 -53 -51 -50 -50 -49 -47 -44 -40 -37 -37 -36 -33 -24 -7 -17 -36 -49 -52 -45 -33 -24 -20 -23 -33 -42 -48 -51 -52 -54 -56 -55 -51 -47 -42 -37 -34 -41 -51 -57 -59 -58 -56 -57 -61 -66 -68 -64 -60 -56 -52 -47 -44 -43 -42 -43 -45 -48 -51 -52 -51 -49 -46 -11 -10 -8 -9 -10 -11 -11 -12 -12 -12 -13 -13 -12 -11 -10 -9 -10 -10 -10 -10 -11 -11 -9 -7 -8 -8 -8 -8 -8 -8 -7 -6 -6 -5 -5 -5 -5 -6 -6 -5 -5 -4 -3 -3 -3 -3 -3 -4 -4 -4 -3 -2 -0 1 2 1 -2 -5 -7 -8 -8 -5 -4 -5 -5 -4 -4 -3 -4 -4 -4 -4 -3 -2 -2 -1 -1 -0 -1 -2 -3 -4 -4 -5 -7 -11 -13 -14 -13 -11 -9 -7 -7 -6 -6 -5 -5 -6 -7 -8 -6 -2 3 6 7 7 7 7 7 7 6 4 2 0 -1 -2 -1 -1 -1 -1 -3 -4 -5 -6 -7 -7 -7 -8 -9 -10 -11 -10 -9 -7 -4 -0 2 4 5 5 6 6 6 6 6 6 6 5 4 3 2 3 4 4 5 6 7 8 9 10 10 10 10 11 11 12 13 14 15 16 16 14 13 12 11 10 9 8 7 6 5 5 5 6 8 10 12 12 12 10 9 8 8 9 9 9 10 9 8 6 4 2 2 2 2 3 3 4 4 4 5 5 6 6 7 9 10 10 10 8 7 5 4 2 0 1 2 4 7 7 7 7 7 7 6 5 4 4 5 5 6 8 9 9 8 6 3 -2 -5 -8 -9 -10 -9 -6 -4 -1 0 1 4 10 20 24 26 27 27 30 29 27 26 33 34 36 38 42 45 42 38 37 38 35 32 30 28 30 28 24 17 14 13 12 11 7 -1 -9 -14 -14 -8 6 18 26 28 26 20 14 10 7 5 0 -6 -13 -18 -19 -20 -20 -17 -19 -24 -29 -32 -30 -24 -18 -10 9 16 11 -4 -19 -29 -32 -31 -27 -24 -22 -10 6 14 13 5 -4 -13 -22 -31 -40 -48 -54 -61 -63 -61 -58 -55 -53 -52 -50 -49 -48 -46 -43 -40 -39 -36 -34 -29 -16 -16 -28 -42 -51 -48 -39 -27 -18 -17 -27 -39 -48 -52 -53 -55 -57 -58 -56 -49 -45 -41 -35 -36 -46 -55 -60 -60 -58 -57 -59 -62 -64 -63 -60 -57 -52 -48 -45 -43 -41 -42 -43 -46 -49 -52 -53 -51 -48 -10 -9 -8 -9 -10 -11 -12 -12 -12 -12 -12 -12 -12 -11 -11 -10 -10 -11 -11 -10 -9 -9 -8 -8 -8 -9 -8 -8 -7 -7 -6 -5 -4 -4 -4 -4 -5 -5 -5 -4 -3 -3 -2 -3 -3 -4 -4 -3 -3 -3 -3 -2 0 1 0 -2 -5 -7 -8 -7 -5 -2 -2 -3 -3 -2 -2 -2 -3 -3 -3 -3 -3 -3 -2 -1 -1 -1 -1 -2 -3 -4 -6 -8 -10 -12 -12 -12 -10 -9 -8 -8 -8 -7 -6 -5 -4 -4 -4 -3 -2 1 6 8 8 8 5 2 -2 -5 -5 -6 -6 -6 -5 -4 -3 -1 1 2 2 2 2 2 2 3 3 3 2 1 -1 -3 -5 -6 -6 -6 -5 -5 -3 -0 1 2 2 3 4 5 5 4 3 2 -0 -1 -2 -1 -1 -1 0 1 2 3 4 4 5 5 6 7 8 10 11 12 13 13 13 13 12 13 13 12 11 11 9 8 6 6 7 8 10 12 12 12 12 11 11 11 11 11 11 11 11 10 8 6 4 3 3 3 3 4 5 5 5 6 6 6 7 8 10 11 12 12 11 10 9 8 5 3 2 3 5 7 9 9 9 9 8 7 6 4 5 5 5 8 9 11 13 13 11 6 2 -1 -5 -7 -8 -8 -6 -3 -0 2 6 14 22 28 31 30 29 36 36 34 32 36 37 34 31 32 38 38 37 37 39 38 37 33 29 28 29 30 28 23 20 18 16 12 3 -6 -13 -18 -19 -9 5 19 26 28 26 20 15 12 9 6 1 -7 -13 -15 -15 -13 -9 -11 -17 -23 -29 -26 -19 -11 -6 10 23 26 17 -3 -19 -29 -33 -33 -30 -28 -19 -5 5 11 9 2 -6 -16 -25 -34 -42 -49 -56 -60 -62 -61 -57 -55 -53 -51 -49 -49 -48 -47 -44 -42 -38 -35 -32 -25 -19 -21 -30 -43 -47 -43 -33 -21 -15 -22 -34 -46 -53 -54 -55 -56 -58 -58 -53 -49 -45 -41 -32 -37 -47 -56 -60 -59 -57 -57 -59 -60 -60 -60 -57 -53 -49 -47 -44 -41 -41 -42 -44 -46 -50 -52 -52 -49 -9 -9 -10 -11 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -10 -10 -12 -13 -11 -10 -8 -7 -7 -8 -8 -7 -7 -6 -5 -5 -4 -3 -3 -4 -4 -4 -5 -4 -3 -2 -2 -2 -4 -4 -4 -3 -2 -2 -2 -2 -1 -0 -0 -2 -4 -5 -4 -4 -3 -1 0 -1 -2 -2 -2 -2 -2 -2 -1 -1 -2 -3 -4 -3 -2 -1 -1 -1 -2 -4 -7 -9 -10 -10 -9 -9 -8 -7 -7 -7 -8 -8 -6 -4 -2 -1 -1 -1 0 2 3 5 6 6 3 -3 -8 -12 -14 -14 -13 -13 -11 -10 -8 -7 -4 -2 0 2 3 4 6 7 9 11 11 11 11 10 9 6 3 -1 -5 -8 -11 -10 -9 -8 -7 -6 -4 -2 -0 0 -1 -1 -2 -4 -5 -5 -6 -6 -6 -7 -6 -5 -3 -2 -1 -1 -0 0 1 2 3 4 5 6 7 7 8 9 10 11 11 11 11 11 10 9 8 8 8 9 11 11 12 13 13 13 13 13 13 13 14 14 13 13 11 9 7 6 5 5 6 6 6 7 7 7 7 7 7 8 9 11 13 14 14 14 14 12 10 7 5 5 6 7 8 9 11 10 10 8 5 5 5 5 7 7 9 12 15 15 14 11 8 3 -0 -4 -5 -5 -2 0 4 9 15 18 21 25 28 30 37 42 43 41 41 41 36 29 26 28 33 34 26 32 37 39 38 33 30 30 33 36 31 26 23 20 16 9 1 -7 -15 -21 -20 -10 4 18 27 29 27 22 18 14 11 6 0 -6 -9 -9 -5 -3 -2 -5 -13 -21 -22 -17 -10 -6 8 23 32 32 15 -4 -20 -30 -35 -31 -29 -25 -17 -7 3 8 8 1 -9 -18 -27 -35 -43 -51 -57 -61 -62 -59 -56 -53 -51 -50 -50 -50 -49 -47 -45 -41 -38 -35 -30 -22 -17 -18 -30 -40 -43 -39 -30 -19 -19 -28 -41 -51 -54 -55 -55 -56 -56 -55 -52 -49 -45 -36 -34 -38 -48 -54 -55 -55 -55 -55 -55 -56 -57 -56 -53 -50 -47 -45 -41 -40 -41 -43 -45 -47 -50 -51 -50 -9 -10 -11 -12 -12 -12 -12 -11 -11 -12 -12 -12 -12 -12 -12 -11 -11 -14 -15 -14 -12 -9 -7 -7 -8 -7 -6 -5 -4 -4 -3 -3 -3 -3 -4 -4 -4 -4 -4 -3 -2 -2 -3 -4 -4 -3 -2 -2 -2 -2 -1 -1 -1 -2 -4 -5 -4 -2 -1 -0 1 0 -1 -1 -2 -2 -2 -1 -1 -1 -1 -2 -4 -4 -5 -3 -2 -1 -2 -4 -7 -9 -10 -9 -8 -7 -6 -6 -6 -6 -6 -5 -5 -3 -0 1 1 1 1 2 3 3 1 1 -2 -5 -10 -13 -14 -15 -15 -16 -15 -13 -11 -10 -9 -8 -6 -4 -2 -0 2 5 7 10 12 12 12 12 11 10 7 3 -1 -4 -7 -11 -12 -12 -12 -11 -10 -8 -6 -3 -2 -1 -1 -0 0 1 0 -1 -2 -4 -5 -6 -6 -6 -5 -3 -3 -2 -2 -2 -2 -2 -2 -2 -1 -1 -1 -0 1 2 4 5 6 8 8 9 9 9 9 10 10 11 11 12 13 13 14 14 15 16 16 16 16 16 17 16 14 12 10 9 8 8 8 8 9 9 9 9 8 7 7 7 9 11 13 15 17 19 18 16 13 9 7 7 7 8 9 10 10 11 11 9 8 6 4 3 5 6 8 11 14 17 18 18 14 10 5 2 1 2 2 5 9 15 14 15 19 27 35 40 44 46 47 48 46 42 36 35 28 25 19 1 17 30 38 40 37 33 33 37 41 38 33 28 24 22 17 11 3 -8 -17 -22 -21 -15 3 19 29 31 29 25 20 15 9 4 0 -2 -1 1 4 8 9 1 -11 -17 -18 -16 -12 2 18 31 38 30 12 -7 -23 -28 -28 -27 -27 -26 -19 -8 3 10 9 -1 -11 -20 -27 -36 -44 -51 -56 -60 -60 -57 -54 -52 -50 -50 -50 -50 -49 -47 -44 -40 -37 -33 -25 -17 -13 -24 -38 -46 -48 -44 -32 -23 -24 -34 -46 -51 -54 -54 -53 -53 -54 -53 -52 -47 -41 -36 -34 -39 -45 -48 -50 -51 -50 -51 -54 -56 -55 -53 -50 -48 -45 -41 -40 -40 -42 -44 -45 -47 -49 -49 -10 -11 -12 -12 -12 -11 -11 -11 -11 -12 -12 -12 -12 -12 -11 -11 -11 -15 -15 -13 -11 -9 -8 -7 -7 -6 -4 -3 -2 -2 -2 -2 -2 -2 -3 -3 -3 -3 -3 -2 -1 -2 -3 -3 -3 -3 -2 -2 -2 -2 -1 -2 -3 -5 -6 -5 -3 0 1 1 1 -0 -1 -2 -2 -3 -2 -1 -1 -2 -2 -4 -5 -5 -5 -3 -2 -2 -3 -6 -8 -9 -8 -7 -6 -5 -5 -5 -5 -5 -4 -3 -2 -0 1 1 0 -1 -1 1 2 1 -3 -6 -9 -11 -12 -11 -11 -11 -12 -13 -12 -10 -9 -8 -7 -6 -5 -4 -3 -1 1 4 6 7 8 8 7 6 4 2 0 -2 -3 -4 -5 -6 -7 -7 -7 -7 -6 -4 -3 -2 -1 -0 0 1 3 4 5 6 6 5 4 2 0 -1 -2 -2 -1 0 1 1 0 -0 -1 -2 -3 -4 -5 -6 -6 -6 -5 -3 -2 0 2 4 5 7 8 9 9 10 10 11 12 13 15 16 17 17 18 18 18 18 18 18 18 17 15 14 13 13 13 12 12 12 12 12 12 10 9 8 8 8 10 13 16 19 19 19 17 14 12 11 11 11 11 11 11 12 12 10 9 7 6 4 4 4 5 6 9 15 20 23 23 20 16 11 9 8 6 6 10 15 16 16 20 29 38 41 43 45 47 47 46 44 42 44 37 16 -12 -23 0 21 35 40 39 36 36 40 43 42 39 35 28 26 23 18 11 2 -7 -16 -23 -26 -17 2 19 30 33 31 25 19 12 8 6 5 6 7 8 13 16 11 -1 -12 -19 -22 -19 -5 10 25 38 38 25 6 -14 -18 -22 -24 -26 -28 -24 -17 -6 7 13 6 -4 -13 -22 -29 -37 -44 -51 -57 -59 -59 -57 -54 -52 -50 -49 -48 -48 -47 -45 -42 -39 -35 -28 -20 -15 -21 -34 -45 -50 -49 -42 -32 -25 -24 -35 -44 -50 -51 -50 -49 -51 -53 -53 -48 -43 -39 -35 -34 -37 -41 -43 -44 -46 -49 -53 -56 -55 -53 -52 -49 -46 -43 -41 -41 -42 -44 -45 -46 -47 -48 -11 -12 -12 -11 -11 -11 -10 -11 -12 -12 -13 -12 -12 -11 -12 -12 -11 -14 -13 -10 -8 -8 -8 -7 -7 -5 -4 -2 -2 -2 -1 -2 -2 -2 -2 -2 -3 -2 -2 -2 -2 -2 -3 -4 -4 -3 -2 -2 -2 -1 -1 -2 -4 -6 -7 -5 -2 1 1 0 -1 -1 -2 -3 -3 -3 -2 -2 -2 -3 -4 -5 -6 -5 -5 -3 -3 -4 -6 -8 -8 -7 -6 -5 -5 -4 -4 -4 -5 -4 -3 -2 -1 -1 -1 -2 -3 -4 -3 -1 -0 -2 -7 -11 -13 -12 -9 -6 -5 -4 -5 -5 -4 -3 -2 -2 -1 -0 1 3 3 2 2 2 2 0 -1 -1 -2 -3 -5 -5 -5 -5 -3 -2 -2 -1 -0 1 1 0 -0 -1 -2 -3 -3 -4 -4 -4 -3 -1 1 3 5 6 6 6 4 2 -0 -1 -1 -1 1 2 3 3 4 3 2 -0 -2 -5 -7 -8 -9 -9 -9 -8 -6 -4 -2 1 3 4 5 6 7 9 10 13 14 15 16 17 17 17 18 18 19 19 19 19 18 18 17 17 17 16 15 15 15 14 14 13 12 11 9 8 8 9 12 14 14 16 17 19 20 18 17 15 14 14 14 14 14 13 11 10 9 7 6 6 5 4 3 7 13 20 26 26 24 20 17 14 11 10 12 18 20 20 22 28 37 40 42 43 43 43 42 43 46 52 51 45 30 -22 -2 20 34 39 39 38 38 41 43 42 42 40 34 30 28 25 20 13 4 -7 -18 -27 -26 -17 1 23 31 32 29 24 16 12 11 12 13 12 12 16 18 13 5 -6 -16 -22 -21 -11 1 16 32 39 34 20 0 -8 -17 -22 -23 -27 -26 -24 -16 -1 12 12 6 -4 -15 -22 -30 -39 -46 -54 -59 -61 -62 -58 -55 -52 -50 -50 -50 -49 -47 -44 -40 -36 -32 -27 -21 -19 -28 -40 -49 -50 -47 -39 -30 -20 -25 -34 -43 -47 -46 -46 -47 -50 -52 -49 -46 -42 -39 -33 -32 -33 -36 -39 -42 -48 -53 -56 -55 -54 -53 -52 -49 -45 -43 -42 -42 -43 -45 -46 -46 -47 -11 -12 -12 -11 -10 -10 -10 -11 -12 -13 -13 -12 -12 -13 -14 -14 -12 -13 -11 -8 -6 -7 -7 -7 -6 -5 -3 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -2 -2 -2 -2 -3 -4 -4 -4 -3 -2 -2 -2 -1 -1 -2 -5 -7 -7 -5 -1 1 -0 -2 -2 -3 -3 -3 -3 -3 -3 -3 -4 -5 -5 -6 -6 -6 -5 -4 -5 -6 -8 -8 -6 -5 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -2 -3 -5 -6 -6 -5 -4 -2 -2 -5 -8 -10 -10 -7 -4 -1 1 2 2 3 4 5 5 5 6 7 9 10 8 5 2 -2 -5 -8 -10 -11 -10 -11 -11 -10 -8 -5 -3 -1 0 2 4 5 5 3 1 -3 -5 -7 -7 -8 -9 -9 -9 -9 -7 -4 -2 1 2 3 3 2 0 -2 -3 -4 -4 -2 -1 0 2 3 3 3 3 1 -1 -3 -6 -8 -10 -10 -11 -10 -9 -6 -5 -4 -3 -1 1 4 6 9 11 12 13 13 14 15 16 16 17 17 18 19 19 19 20 20 20 19 18 17 17 16 16 15 14 13 11 10 8 7 6 7 8 11 16 21 25 25 23 21 18 17 16 16 16 16 15 14 13 11 10 10 9 7 5 5 7 12 19 24 26 26 24 19 16 15 15 20 21 21 20 23 33 38 41 41 40 38 38 42 49 55 56 54 49 28 27 31 37 42 40 39 39 41 42 42 43 43 40 35 32 30 27 21 12 2 -9 -18 -23 -24 -16 3 22 29 30 28 22 18 16 16 17 16 17 20 19 14 8 -0 -10 -18 -19 -14 -5 8 24 35 38 32 17 2 -11 -19 -19 -23 -25 -27 -25 -11 5 13 12 4 -9 -19 -26 -32 -39 -50 -57 -62 -66 -63 -59 -55 -52 -51 -51 -51 -49 -47 -43 -40 -37 -33 -27 -18 -20 -30 -43 -48 -48 -44 -38 -25 -21 -27 -35 -41 -43 -44 -45 -46 -49 -49 -47 -45 -42 -37 -32 -30 -32 -35 -40 -46 -52 -55 -54 -54 -54 -53 -50 -47 -44 -42 -43 -43 -45 -45 -45 -45 -12 -12 -11 -11 -10 -10 -10 -11 -12 -13 -12 -12 -13 -15 -15 -14 -12 -11 -9 -7 -6 -7 -7 -6 -6 -4 -3 -3 -3 -3 -2 -2 -2 -2 -2 -3 -3 -3 -2 -2 -3 -3 -4 -3 -3 -2 -2 -2 -1 -1 -1 -3 -5 -7 -6 -4 -1 -1 -2 -3 -3 -3 -3 -4 -4 -4 -5 -5 -5 -5 -5 -6 -6 -6 -6 -6 -8 -8 -7 -6 -4 -4 -4 -5 -5 -4 -3 -2 -3 -4 -4 -5 -5 -7 -7 -7 -6 -4 -3 -3 -4 -6 -8 -7 -4 -1 1 4 6 8 8 8 8 8 7 7 9 11 12 11 7 2 -3 -7 -11 -14 -16 -16 -15 -14 -13 -11 -9 -5 -4 -3 -2 -1 1 1 1 -1 -3 -7 -9 -10 -9 -9 -9 -9 -10 -10 -10 -9 -7 -5 -3 -1 1 2 1 0 -2 -3 -5 -5 -5 -4 -3 -1 -0 1 2 3 2 1 -0 -2 -4 -5 -7 -9 -10 -10 -10 -11 -11 -10 -7 -4 -1 2 4 5 7 8 9 9 10 11 13 14 15 16 18 19 19 20 21 21 21 20 19 17 16 15 14 14 13 12 10 8 5 3 3 5 10 15 22 26 27 27 24 22 20 19 19 19 19 18 17 16 14 13 12 11 9 7 6 7 10 16 21 25 25 23 22 21 20 21 21 19 17 21 30 37 40 41 38 36 38 45 51 55 56 56 55 52 48 44 42 45 44 42 41 43 42 43 44 44 43 40 36 34 31 25 18 10 2 -7 -16 -23 -24 -17 3 16 24 27 27 24 22 20 20 19 21 22 20 15 11 4 -4 -12 -16 -15 -9 0 16 29 35 35 27 13 -2 -12 -14 -19 -22 -26 -30 -22 -6 7 15 14 1 -10 -19 -26 -33 -44 -53 -60 -66 -66 -63 -59 -55 -53 -53 -52 -51 -49 -46 -43 -40 -37 -32 -19 -13 -19 -35 -44 -48 -48 -45 -35 -26 -24 -29 -36 -40 -42 -43 -43 -45 -46 -46 -47 -45 -41 -35 -30 -29 -32 -36 -40 -45 -49 -52 -53 -54 -53 -51 -48 -45 -43 -43 -43 -45 -46 -46 -45 -12 -12 -11 -10 -10 -10 -11 -11 -12 -12 -12 -12 -14 -15 -15 -14 -12 -10 -8 -7 -6 -6 -6 -5 -5 -3 -3 -3 -4 -4 -3 -2 -2 -2 -3 -4 -4 -4 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -1 -1 -2 -3 -5 -7 -5 -3 -0 -2 -3 -4 -4 -4 -4 -4 -4 -5 -5 -5 -5 -5 -5 -6 -6 -7 -7 -8 -8 -7 -5 -4 -3 -4 -5 -5 -5 -4 -3 -3 -3 -4 -5 -7 -8 -8 -8 -6 -5 -3 -3 -3 -5 -5 -6 -3 -0 2 4 5 6 7 7 4 3 2 1 2 6 7 6 1 -5 -9 -11 -12 -13 -14 -15 -16 -16 -15 -13 -12 -11 -9 -8 -8 -9 -9 -8 -8 -8 -8 -7 -8 -9 -8 -7 -5 -4 -3 -3 -4 -5 -6 -7 -7 -6 -4 -2 0 2 2 2 0 -2 -4 -5 -6 -6 -6 -5 -4 -2 -1 -0 1 1 1 0 -1 -2 -3 -4 -5 -7 -8 -9 -11 -10 -9 -8 -6 -4 -2 -1 0 1 2 3 4 7 9 11 12 14 16 17 19 20 21 22 21 20 19 16 14 14 14 14 14 13 11 9 7 4 2 2 6 13 21 27 31 31 29 26 24 23 22 22 21 21 20 18 16 15 13 13 11 9 7 6 9 14 20 23 26 28 28 25 23 22 19 17 23 32 38 41 42 40 39 42 50 53 55 55 55 56 59 59 56 51 49 48 47 46 47 46 45 44 43 42 41 39 36 34 29 24 18 12 3 -6 -16 -22 -22 -13 -0 12 20 26 28 27 24 23 22 23 23 20 17 13 8 2 -6 -12 -14 -11 -5 8 19 26 28 26 20 9 -2 -10 -14 -17 -22 -30 -30 -20 -5 9 16 9 -1 -12 -20 -28 -38 -48 -57 -64 -67 -66 -63 -58 -55 -53 -52 -51 -49 -47 -44 -42 -40 -37 -25 -14 -13 -30 -42 -49 -50 -49 -44 -34 -27 -26 -30 -35 -39 -41 -39 -40 -43 -46 -48 -47 -44 -39 -33 -29 -29 -31 -33 -37 -42 -46 -50 -53 -54 -53 -50 -47 -44 -44 -44 -45 -46 -46 -46 -12 -11 -10 -10 -10 -11 -11 -11 -11 -11 -12 -12 -13 -14 -14 -13 -12 -10 -8 -6 -6 -6 -5 -4 -4 -3 -3 -3 -3 -3 -2 -2 -2 -3 -4 -5 -5 -4 -3 -3 -3 -3 -3 -2 -2 -2 -2 -1 -1 -1 -2 -3 -5 -5 -4 -2 -1 -2 -3 -4 -5 -5 -5 -4 -3 -3 -3 -4 -5 -5 -6 -7 -7 -8 -8 -8 -7 -5 -4 -3 -4 -5 -5 -5 -6 -5 -4 -4 -4 -4 -5 -7 -8 -7 -6 -5 -4 -3 -4 -4 -4 -4 -4 -2 0 2 2 1 -0 -1 -2 -5 -7 -7 -5 -2 0 -0 -3 -8 -11 -13 -14 -14 -13 -13 -13 -13 -13 -12 -11 -11 -11 -11 -12 -13 -15 -15 -15 -15 -14 -12 -9 -6 -5 -4 -2 1 3 5 6 6 5 3 0 -2 -3 -4 -3 -2 1 2 3 4 2 0 -2 -4 -6 -7 -7 -7 -6 -6 -4 -3 -1 -1 -0 0 0 0 0 -0 -1 -2 -3 -4 -5 -6 -6 -6 -6 -5 -4 -4 -4 -5 -5 -4 -3 0 3 5 8 10 12 14 16 18 19 20 20 20 17 15 14 13 13 13 13 13 14 13 10 6 2 -0 3 10 18 27 31 32 30 28 26 25 24 24 23 23 22 20 18 16 15 15 13 10 7 7 10 15 20 26 30 30 29 27 24 23 22 30 36 40 42 42 43 45 48 54 55 55 54 54 56 60 62 63 61 56 53 50 49 50 49 47 44 41 37 36 36 37 35 32 29 26 20 12 3 -6 -13 -17 -16 -9 1 12 20 27 30 30 28 26 23 21 20 19 16 11 6 -1 -7 -11 -12 -8 1 10 17 20 18 18 15 8 -3 -5 -7 -14 -26 -32 -30 -20 -4 9 11 7 -1 -11 -20 -29 -38 -49 -58 -64 -67 -66 -61 -57 -54 -52 -51 -49 -48 -46 -43 -41 -40 -32 -20 -8 -23 -38 -48 -51 -51 -49 -43 -34 -27 -27 -31 -36 -38 -37 -38 -41 -44 -48 -48 -46 -42 -37 -31 -28 -28 -29 -29 -34 -39 -43 -48 -52 -54 -53 -50 -47 -46 -45 -46 -46 -47 -47 -11 -10 -10 -10 -10 -11 -11 -11 -11 -11 -11 -11 -12 -14 -14 -13 -11 -9 -7 -6 -6 -6 -4 -4 -3 -3 -3 -3 -3 -3 -1 -1 -2 -4 -6 -7 -6 -5 -3 -3 -2 -2 -2 -1 -2 -2 -2 -1 -1 -1 -2 -4 -5 -4 -2 -2 -2 -3 -3 -4 -5 -4 -4 -3 -2 -2 -2 -4 -5 -6 -7 -8 -8 -9 -9 -7 -5 -4 -3 -4 -4 -5 -5 -5 -5 -5 -4 -4 -4 -5 -5 -6 -6 -5 -4 -4 -3 -4 -5 -4 -3 -2 -2 -1 -2 -3 -5 -7 -8 -9 -9 -10 -10 -9 -6 -4 -4 -6 -9 -11 -12 -12 -12 -11 -11 -10 -9 -9 -8 -6 -5 -5 -5 -6 -8 -9 -10 -11 -11 -11 -10 -9 -7 -4 -2 -0 2 4 7 9 11 13 12 11 8 6 3 -0 -2 -3 -2 -0 2 3 4 3 2 0 -1 -3 -4 -5 -5 -6 -5 -4 -3 -3 -2 -1 -0 1 1 2 2 2 2 2 1 1 0 -1 -2 -2 -2 -2 -2 -3 -5 -6 -7 -5 -4 -2 -0 2 4 6 8 11 13 15 16 18 17 15 14 13 12 11 11 13 15 17 16 13 8 2 -0 1 6 15 24 29 31 31 29 26 25 26 27 27 26 24 22 20 18 17 16 13 11 9 9 12 16 24 29 30 29 29 27 26 27 32 37 40 42 42 45 48 50 53 55 55 54 53 55 59 62 65 68 63 58 54 50 51 50 48 45 41 35 31 32 35 37 36 34 31 26 19 12 5 -0 -6 -10 -10 -4 5 14 23 30 32 31 28 25 22 23 21 17 13 8 2 -4 -10 -13 -12 -7 0 7 12 9 12 15 14 9 9 6 -4 -20 -31 -34 -31 -21 -4 7 12 10 -2 -13 -22 -32 -42 -51 -59 -65 -68 -64 -59 -55 -52 -51 -50 -49 -47 -44 -42 -40 -37 -27 -8 -17 -30 -42 -49 -50 -50 -47 -41 -33 -28 -29 -33 -35 -35 -35 -37 -41 -45 -47 -47 -45 -41 -35 -30 -28 -27 -26 -27 -31 -37 -44 -49 -53 -55 -54 -51 -49 -48 -47 -47 -48 -48 -11 -10 -10 -10 -10 -10 -10 -10 -10 -10 -11 -11 -12 -13 -13 -12 -9 -7 -6 -6 -6 -6 -5 -5 -4 -3 -3 -3 -3 -2 -1 -2 -3 -5 -7 -7 -6 -5 -4 -3 -2 -1 -1 -1 -2 -2 -1 -1 -1 -2 -3 -4 -5 -3 -2 -2 -4 -4 -3 -3 -3 -3 -3 -2 -1 -2 -2 -4 -5 -6 -7 -8 -9 -9 -9 -6 -4 -3 -3 -4 -4 -4 -4 -5 -5 -4 -4 -4 -4 -5 -5 -4 -3 -3 -2 -2 -3 -4 -5 -4 -2 -0 -1 -4 -7 -10 -12 -12 -12 -11 -9 -7 -6 -4 -3 -3 -6 -8 -9 -10 -9 -8 -8 -7 -6 -5 -4 -3 -1 -0 0 0 -0 -1 -1 -2 -3 -3 -4 -4 -4 -4 -4 -2 -1 1 2 3 5 7 9 11 12 11 10 10 8 5 2 -1 -2 -2 -1 0 2 2 3 3 2 2 1 1 -0 -2 -2 -2 -2 -2 -2 -1 -0 0 1 2 3 3 4 5 5 6 5 5 4 3 3 3 3 2 0 -2 -3 -3 -3 -3 -3 -3 -2 -2 -1 0 3 5 8 10 12 12 12 12 10 9 8 10 14 17 19 18 15 10 4 -0 -2 2 11 19 25 28 28 28 27 28 29 29 28 26 25 23 20 19 18 17 14 12 11 11 14 20 26 28 29 30 30 29 29 32 35 38 41 43 46 46 46 48 53 54 54 53 54 56 59 65 70 69 64 58 51 51 51 50 47 44 37 32 30 32 35 37 37 34 30 26 21 17 12 7 -0 -4 -3 2 9 19 28 31 32 30 28 26 25 23 19 14 8 3 -4 -10 -16 -16 -14 -9 -3 4 4 7 12 15 15 17 14 4 -12 -27 -35 -37 -34 -18 -1 12 18 9 -3 -14 -24 -33 -44 -54 -61 -68 -68 -63 -58 -53 -51 -50 -49 -48 -45 -43 -41 -40 -35 -19 -16 -24 -37 -46 -48 -48 -48 -46 -41 -35 -31 -31 -32 -33 -33 -34 -37 -42 -46 -48 -47 -44 -38 -33 -29 -28 -27 -24 -25 -30 -37 -44 -50 -54 -56 -54 -52 -50 -49 -48 -49 -48 -10 -9 -9 -9 -10 -10 -10 -10 -10 -10 -11 -12 -13 -13 -12 -11 -8 -7 -6 -5 -6 -7 -6 -5 -5 -5 -4 -4 -3 -2 -2 -3 -5 -7 -8 -8 -6 -5 -4 -3 -2 -2 -1 -1 -2 -1 -1 -2 -2 -3 -4 -5 -4 -2 -2 -3 -4 -4 -2 -2 -2 -3 -2 -2 -2 -2 -3 -4 -4 -5 -7 -8 -9 -9 -8 -5 -3 -3 -4 -4 -3 -4 -4 -5 -4 -4 -4 -4 -5 -5 -4 -3 -2 -1 -1 -1 -2 -4 -4 -3 -2 -1 -4 -8 -12 -14 -14 -12 -10 -7 -3 1 2 2 0 -2 -4 -5 -5 -5 -5 -4 -4 -4 -3 -2 -1 1 2 3 4 3 3 3 3 3 3 3 2 1 0 -0 0 0 1 2 3 2 3 3 4 5 5 6 7 8 8 8 6 3 1 0 -0 0 1 1 2 3 4 6 7 6 5 4 4 4 3 3 2 2 2 1 2 2 2 3 4 5 6 7 7 7 7 7 7 7 6 6 5 4 3 2 1 1 0 -1 -1 -2 -3 -4 -4 -4 -3 -1 1 3 5 6 6 5 5 7 10 14 17 19 18 16 11 5 -1 -3 -1 5 12 20 24 27 28 28 29 30 30 30 29 27 24 22 20 19 17 15 13 12 15 19 23 28 29 31 32 31 31 32 33 35 38 42 44 44 43 45 50 53 54 53 53 53 56 63 68 70 68 63 55 52 51 51 49 47 41 35 31 29 31 35 37 35 33 31 29 25 21 16 10 6 5 4 7 15 25 28 31 32 32 30 28 25 21 16 10 4 -4 -13 -19 -22 -21 -18 -13 -5 -0 5 10 14 19 21 19 13 0 -18 -31 -38 -40 -31 -13 6 20 18 8 -3 -15 -25 -37 -47 -56 -65 -69 -66 -60 -55 -52 -51 -50 -49 -47 -44 -43 -42 -40 -32 -19 -17 -27 -40 -45 -48 -48 -49 -46 -42 -36 -31 -30 -31 -32 -32 -34 -38 -44 -47 -48 -45 -41 -36 -32 -31 -30 -27 -25 -25 -30 -37 -44 -51 -55 -55 -54 -52 -51 -50 -50 -49 -9 -9 -10 -10 -9 -9 -9 -9 -9 -10 -11 -12 -14 -13 -12 -11 -9 -7 -6 -5 -6 -8 -7 -6 -6 -6 -5 -4 -3 -3 -3 -4 -6 -8 -8 -7 -6 -5 -3 -2 -2 -2 -2 -1 -2 -2 -2 -2 -2 -3 -4 -4 -3 -2 -2 -3 -4 -3 -2 -2 -3 -3 -3 -2 -2 -2 -3 -3 -3 -3 -5 -8 -9 -8 -7 -4 -4 -4 -4 -3 -3 -4 -5 -5 -4 -4 -4 -4 -5 -4 -3 -2 -0 0 0 -1 -2 -4 -3 -3 -3 -5 -9 -11 -13 -12 -10 -7 -4 -0 3 6 6 4 1 -1 -0 0 0 -0 -1 -2 -3 -3 -2 -2 -1 0 1 3 3 3 3 4 5 5 5 5 5 4 4 3 2 2 3 4 3 1 -1 -1 -1 -1 -1 -0 1 3 6 7 8 7 6 5 4 3 3 4 4 4 5 6 7 7 6 7 7 7 7 6 5 5 4 3 3 2 2 2 2 3 4 5 5 6 7 8 8 8 8 8 9 8 8 7 6 6 5 4 3 3 2 0 -1 -2 -3 -4 -4 -4 -4 -4 -3 -2 -1 0 3 7 12 16 18 18 17 13 7 1 -4 -4 -1 6 13 20 24 26 27 27 28 28 28 27 27 26 25 24 22 20 17 15 17 20 23 27 31 34 35 34 34 34 33 33 35 39 42 42 42 44 48 51 53 53 53 52 54 58 63 67 68 66 61 54 52 51 50 47 43 38 34 30 29 32 35 36 35 35 33 31 27 24 20 18 16 10 10 14 22 25 30 34 36 34 31 28 24 20 14 9 -1 -13 -19 -24 -26 -24 -22 -15 -7 1 7 13 19 22 22 21 15 -3 -21 -35 -41 -38 -27 -9 12 20 17 7 -5 -17 -29 -40 -50 -60 -66 -66 -64 -60 -55 -53 -51 -50 -48 -46 -44 -42 -42 -40 -23 -12 -15 -31 -42 -47 -48 -49 -48 -46 -41 -34 -31 -31 -31 -30 -31 -34 -39 -44 -46 -45 -42 -37 -34 -34 -35 -34 -30 -25 -26 -31 -38 -46 -52 -54 -55 -54 -53 -52 -51 -50 -9 -9 -10 -10 -9 -9 -9 -9 -8 -9 -11 -13 -14 -14 -13 -11 -9 -8 -6 -6 -7 -9 -8 -8 -7 -7 -5 -4 -3 -3 -3 -5 -6 -8 -8 -7 -5 -4 -3 -2 -3 -3 -2 -1 -2 -2 -3 -3 -2 -3 -4 -4 -2 -3 -3 -2 -2 -1 -2 -4 -5 -4 -2 -1 -1 -2 -2 -2 -2 -3 -5 -8 -8 -7 -6 -5 -5 -5 -4 -3 -4 -5 -5 -4 -4 -4 -4 -4 -4 -3 -2 -0 0 1 -0 -2 -4 -5 -5 -6 -7 -9 -11 -11 -8 -6 -3 -2 0 3 4 5 3 1 -1 0 2 2 2 1 -0 -1 -3 -3 -3 -3 -3 -2 -2 -1 -1 0 2 3 4 5 5 5 6 6 5 3 2 2 3 3 0 -2 -3 -3 -3 -3 -3 -3 -3 -1 1 4 6 8 8 7 7 6 6 6 6 5 5 5 6 5 3 4 4 4 4 3 4 4 4 3 2 0 -1 -2 -2 -2 -1 0 1 3 4 5 6 7 8 9 10 10 10 10 10 9 9 9 8 7 6 6 5 4 3 2 1 -0 -2 -4 -6 -8 -10 -10 -8 -3 2 7 11 14 16 17 15 11 4 -2 -5 -5 1 8 13 18 20 22 24 25 26 27 27 28 27 26 25 23 21 18 20 23 26 26 32 36 38 38 39 38 36 34 35 38 40 41 40 41 44 47 50 51 51 51 52 54 57 60 64 66 67 59 54 52 51 47 43 40 37 32 30 30 32 35 37 37 36 34 31 29 28 27 25 19 16 17 21 23 29 35 39 37 34 31 27 24 19 15 5 -7 -14 -21 -26 -28 -28 -24 -18 -9 0 9 14 18 20 22 22 11 -6 -23 -36 -40 -36 -25 -5 14 20 16 5 -8 -20 -32 -43 -53 -61 -65 -66 -63 -59 -55 -52 -50 -50 -47 -45 -42 -40 -41 -29 -14 -4 -20 -36 -46 -49 -49 -50 -48 -45 -39 -35 -32 -30 -28 -28 -29 -33 -37 -42 -43 -42 -38 -34 -34 -36 -37 -36 -31 -27 -27 -31 -39 -46 -52 -54 -55 -55 -54 -53 -51 -9 -9 -9 -10 -10 -10 -9 -8 -8 -9 -11 -13 -14 -14 -13 -11 -10 -8 -7 -7 -8 -9 -9 -9 -8 -7 -4 -3 -3 -3 -3 -5 -6 -7 -7 -5 -4 -3 -2 -3 -3 -2 -2 -2 -3 -3 -3 -2 -3 -4 -4 -3 -1 -1 -2 -1 -0 0 -2 -4 -4 -2 -0 1 0 -1 -2 -2 -3 -5 -7 -8 -7 -6 -5 -5 -5 -4 -3 -2 -3 -4 -4 -3 -3 -4 -4 -4 -2 -2 -1 -0 0 -1 -2 -5 -7 -9 -9 -9 -8 -9 -8 -6 -3 -1 -0 0 1 2 0 -3 -6 -7 -6 -3 -2 -2 -3 -4 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -3 -2 -1 0 2 4 5 6 5 4 1 -1 -1 -1 -0 -2 -3 -3 -2 -0 -0 -1 -3 -4 -4 -2 0 2 5 6 7 7 7 6 5 5 4 3 3 2 1 -1 -1 -1 -1 -2 -2 -2 -2 -1 -1 -1 -2 -3 -4 -6 -6 -7 -7 -6 -4 -3 -0 2 3 6 8 9 10 10 11 11 11 11 11 11 10 9 8 8 8 9 9 9 8 6 4 1 -2 -6 -9 -11 -10 -8 -3 2 7 11 14 16 17 13 8 2 -3 -3 -1 2 7 10 14 18 21 23 24 26 27 28 28 27 27 25 23 24 27 28 27 33 36 39 42 43 42 40 38 37 38 39 39 37 38 41 44 46 48 49 49 50 49 50 54 58 63 67 65 63 59 54 48 43 40 39 36 33 31 31 35 37 38 37 35 34 34 34 34 31 27 24 22 23 21 26 31 36 37 36 34 30 28 24 20 13 2 -4 -13 -21 -27 -31 -30 -28 -22 -12 -0 5 9 13 16 20 16 6 -10 -26 -36 -39 -35 -21 0 15 21 16 3 -11 -24 -35 -45 -54 -61 -65 -64 -61 -58 -54 -52 -51 -49 -46 -42 -39 -39 -37 -26 2 -10 -28 -43 -49 -49 -50 -49 -47 -43 -38 -34 -31 -27 -26 -25 -27 -31 -37 -40 -41 -40 -36 -35 -36 -39 -40 -38 -32 -27 -26 -31 -40 -47 -52 -55 -55 -55 -54 -53 -10 -9 -9 -10 -10 -10 -9 -8 -7 -9 -11 -12 -13 -14 -13 -12 -10 -9 -8 -7 -8 -9 -9 -9 -8 -6 -4 -3 -2 -2 -3 -5 -6 -7 -6 -4 -3 -2 -2 -2 -3 -2 -2 -3 -4 -4 -3 -2 -3 -4 -3 -2 -0 -1 -1 -0 1 1 -1 -3 -3 -1 1 1 0 -1 -1 -1 -3 -6 -8 -8 -6 -5 -5 -5 -5 -4 -3 -2 -4 -5 -5 -4 -4 -4 -4 -3 -2 -2 -2 -1 -2 -3 -4 -7 -9 -11 -11 -10 -8 -5 -4 -3 -2 -2 -2 -2 -1 -1 -5 -10 -12 -13 -12 -10 -9 -10 -10 -10 -10 -9 -8 -8 -8 -7 -6 -5 -4 -2 -1 -1 -2 -2 -2 0 3 5 5 3 -0 -4 -6 -6 -5 -3 -1 0 1 1 2 1 0 -1 -2 -3 -3 -2 -1 0 2 4 5 5 4 3 3 2 1 0 -0 -1 -3 -3 -4 -4 -5 -6 -6 -6 -6 -5 -4 -4 -3 -4 -5 -6 -8 -9 -10 -10 -9 -7 -4 -2 1 4 6 8 8 8 9 10 11 11 11 11 10 9 9 9 10 11 12 13 14 12 10 7 4 -1 -5 -8 -9 -8 -5 -1 3 8 13 17 18 17 13 6 2 -1 -1 1 4 7 11 15 18 21 22 23 25 26 28 29 29 28 29 29 30 29 32 35 38 42 46 45 43 41 39 39 39 38 36 35 38 41 43 44 45 46 46 44 44 48 53 58 63 66 68 68 63 50 42 39 40 39 37 34 33 33 36 38 38 36 37 38 38 39 37 35 33 31 28 21 20 24 29 33 35 34 32 31 28 25 20 12 6 -4 -14 -22 -29 -32 -32 -29 -21 -12 -5 0 3 6 13 15 11 1 -14 -27 -36 -38 -31 -15 3 18 22 13 0 -14 -26 -37 -46 -55 -62 -63 -62 -60 -57 -54 -53 -50 -47 -42 -38 -37 -40 -37 -2 -4 -19 -36 -46 -48 -49 -49 -48 -44 -40 -36 -32 -29 -26 -24 -24 -27 -33 -38 -41 -41 -39 -35 -35 -36 -39 -40 -36 -31 -24 -23 -32 -41 -48 -53 -54 -55 -55 -54 -10 -9 -9 -10 -11 -10 -9 -7 -7 -8 -10 -11 -12 -13 -12 -11 -10 -9 -8 -8 -9 -10 -10 -9 -7 -5 -3 -2 -2 -2 -4 -5 -7 -7 -6 -4 -2 -2 -2 -2 -2 -3 -3 -4 -5 -4 -2 -2 -3 -3 -2 -1 -0 -1 -0 0 1 -0 -2 -3 -2 0 1 1 0 -1 -1 -2 -5 -7 -8 -7 -5 -4 -5 -6 -6 -5 -4 -4 -6 -6 -5 -5 -5 -4 -3 -2 -2 -3 -3 -3 -3 -4 -5 -7 -9 -11 -11 -9 -6 -3 -3 -4 -4 -6 -6 -5 -4 -5 -8 -12 -14 -14 -13 -11 -10 -11 -11 -11 -11 -10 -9 -10 -12 -12 -11 -10 -9 -5 -2 -0 0 1 1 2 4 5 4 1 -4 -8 -8 -7 -5 -1 3 4 4 3 3 1 1 1 1 -0 -2 -2 -2 -1 0 1 2 2 1 1 1 0 1 1 1 0 -0 -1 -1 -2 -4 -4 -5 -6 -6 -6 -5 -4 -3 -2 -1 -2 -3 -4 -6 -7 -8 -7 -6 -4 -2 0 2 4 4 4 5 7 8 9 10 10 11 10 9 7 7 8 10 12 14 15 14 14 12 8 4 -0 -4 -6 -5 -4 -2 1 5 10 14 17 18 16 13 8 4 1 1 3 6 10 13 16 18 19 21 23 25 28 32 32 32 32 31 31 31 34 38 43 47 48 46 43 41 40 39 39 37 36 37 39 41 42 42 42 41 39 40 44 49 54 59 63 67 69 67 60 49 39 37 39 40 38 35 33 35 37 38 38 38 39 41 43 42 42 41 40 36 26 18 16 20 25 30 32 31 33 31 29 25 19 13 5 -5 -14 -24 -30 -32 -31 -26 -18 -12 -8 -6 -1 8 13 12 8 -2 -14 -27 -36 -35 -27 -12 8 20 20 12 -2 -16 -27 -37 -46 -55 -60 -63 -63 -60 -57 -54 -52 -49 -44 -39 -37 -38 -40 -19 -4 -6 -22 -38 -44 -47 -48 -48 -45 -41 -36 -32 -30 -28 -26 -24 -23 -28 -34 -39 -41 -40 -36 -33 -33 -36 -38 -38 -35 -29 -21 -25 -33 -42 -49 -53 -54 -55 -55 -9 -10 -10 -10 -11 -10 -9 -7 -6 -8 -10 -11 -11 -12 -12 -11 -10 -9 -8 -9 -10 -12 -11 -9 -6 -3 -2 -2 -2 -3 -4 -6 -7 -7 -5 -3 -2 -2 -2 -1 -2 -3 -3 -4 -5 -3 -1 -2 -3 -2 -1 0 -0 -1 -0 0 1 -1 -2 -2 -1 1 1 0 -1 -1 -2 -4 -7 -9 -8 -5 -3 -4 -6 -8 -8 -6 -5 -5 -6 -6 -6 -5 -5 -4 -3 -2 -3 -3 -4 -4 -4 -4 -4 -6 -7 -8 -8 -7 -5 -4 -5 -7 -7 -7 -7 -6 -6 -7 -8 -10 -10 -9 -7 -6 -5 -5 -6 -7 -7 -6 -7 -8 -10 -11 -11 -11 -12 -9 -6 -4 -2 -0 0 1 3 5 4 -0 -5 -9 -6 -4 -1 3 5 5 5 4 2 2 2 2 2 1 -0 -1 -1 -0 -0 -1 -1 -2 -1 -1 -1 1 3 4 4 5 4 4 4 3 2 1 -0 -1 -2 -3 -4 -3 -2 -1 1 2 2 2 1 -1 -2 -2 -2 -2 -1 1 2 4 4 4 3 3 4 5 6 7 9 9 9 8 5 4 4 6 9 11 12 14 15 13 11 7 3 -1 -3 -3 -3 -2 -1 2 6 10 15 18 18 16 12 8 6 5 6 9 11 13 15 15 16 18 21 25 31 34 34 34 33 33 33 35 40 45 49 50 49 46 44 42 41 40 39 38 37 38 39 40 39 38 37 36 38 42 46 50 54 58 61 64 65 66 63 55 40 39 41 43 40 36 36 37 38 39 38 40 42 45 46 46 46 46 44 34 24 18 15 18 23 28 29 33 34 33 30 25 19 11 4 -4 -14 -23 -29 -30 -26 -21 -16 -14 -12 -3 4 9 11 11 8 -1 -15 -28 -34 -33 -24 -9 10 19 18 10 -3 -17 -29 -39 -51 -58 -63 -64 -63 -59 -56 -54 -51 -47 -42 -39 -39 -42 -37 -9 7 -4 -25 -38 -45 -47 -48 -45 -41 -37 -33 -31 -30 -28 -26 -23 -24 -30 -36 -40 -41 -38 -33 -30 -33 -36 -39 -38 -34 -26 -23 -25 -34 -45 -51 -54 -55 -55 -9 -10 -10 -10 -10 -9 -8 -7 -7 -9 -10 -11 -11 -11 -12 -12 -11 -10 -9 -10 -11 -12 -11 -8 -5 -2 -1 -1 -2 -3 -5 -6 -7 -6 -4 -2 -2 -2 -2 -1 -2 -3 -4 -4 -3 -2 -2 -3 -4 -2 -0 0 -1 -2 -1 -1 -1 -2 -2 -2 -1 -0 -1 -2 -2 -2 -4 -7 -9 -10 -7 -3 -3 -4 -7 -9 -8 -6 -5 -5 -6 -5 -5 -5 -5 -4 -3 -2 -3 -4 -4 -5 -4 -3 -2 -3 -4 -5 -6 -5 -5 -5 -7 -8 -7 -5 -4 -4 -5 -6 -6 -6 -4 -2 -1 -0 0 0 0 -1 -1 -1 -2 -3 -5 -6 -7 -8 -10 -8 -7 -6 -4 -2 -0 2 4 6 4 0 -4 -7 -3 1 4 7 7 6 5 3 2 1 -0 -2 -3 -4 -5 -6 -5 -4 -4 -5 -5 -5 -5 -4 -3 -1 1 3 4 5 6 7 7 7 6 6 5 4 3 2 -1 -2 -2 -2 -0 1 2 3 4 3 3 2 2 3 3 4 5 6 7 7 6 4 4 3 4 4 5 7 8 8 7 4 2 1 2 3 5 8 11 13 13 12 8 4 1 -0 -1 -1 -2 -3 -1 2 7 12 16 18 18 15 12 9 7 8 10 12 13 13 13 14 17 20 26 32 35 36 35 35 35 36 40 45 49 51 51 50 48 46 45 43 40 39 37 36 36 36 35 35 36 36 38 41 45 47 49 52 55 57 59 63 66 65 58 47 42 43 41 40 39 38 36 39 39 40 41 45 47 48 48 49 48 42 33 25 19 17 19 22 25 31 35 36 35 29 24 17 10 7 -4 -14 -22 -26 -25 -22 -19 -16 -13 -6 -1 1 4 9 12 10 -0 -16 -27 -33 -31 -24 -6 9 18 19 9 -6 -20 -33 -47 -56 -62 -65 -65 -62 -59 -57 -54 -51 -47 -43 -41 -41 -43 -13 14 11 -12 -30 -41 -46 -47 -45 -42 -38 -33 -31 -30 -29 -28 -25 -25 -27 -33 -39 -42 -40 -35 -27 -29 -33 -37 -40 -38 -32 -26 -22 -25 -37 -47 -53 -55 -55 -10 -10 -11 -11 -10 -9 -8 -7 -8 -9 -10 -11 -11 -11 -12 -12 -11 -11 -10 -11 -12 -13 -11 -8 -4 -1 -1 -2 -3 -4 -6 -7 -7 -5 -3 -2 -2 -2 -2 -2 -3 -4 -4 -3 -2 -2 -3 -5 -5 -2 -0 -0 -2 -3 -3 -2 -2 -2 -2 -2 -2 -3 -4 -5 -4 -4 -6 -9 -10 -9 -5 -3 -3 -6 -8 -9 -7 -5 -4 -4 -4 -3 -4 -5 -5 -5 -4 -3 -3 -3 -4 -3 -3 -1 0 0 -1 -3 -4 -5 -5 -6 -6 -5 -3 -1 -1 -2 -3 -3 -3 -2 -1 0 0 -0 0 1 2 1 2 2 2 2 1 -0 -1 -2 -4 -5 -5 -5 -5 -3 -0 3 5 6 4 1 -3 -5 1 4 5 5 5 3 2 1 -1 -2 -3 -4 -6 -7 -8 -8 -8 -8 -8 -9 -9 -10 -9 -8 -6 -5 -4 -3 -2 -0 1 3 4 5 5 5 6 6 6 5 3 0 -2 -4 -4 -3 -2 -1 0 1 1 2 2 4 4 5 6 7 9 10 10 8 7 6 5 4 4 5 6 7 8 7 5 3 1 -1 -2 0 4 8 12 13 12 9 6 3 1 1 0 -2 -3 -3 -1 4 9 13 17 18 17 14 11 9 10 11 13 13 13 13 14 16 20 26 32 36 37 37 37 37 39 43 47 50 51 52 51 50 48 46 43 40 38 35 33 33 33 35 38 38 40 41 43 44 44 46 48 51 53 57 61 65 65 61 53 44 42 42 42 40 37 38 39 40 41 45 47 48 49 50 51 47 41 33 28 22 19 19 23 29 34 38 38 35 30 23 17 14 6 -5 -14 -21 -22 -22 -20 -17 -14 -9 -7 -8 -6 1 9 13 11 -3 -17 -27 -33 -31 -21 -6 9 22 17 5 -10 -25 -40 -51 -59 -64 -65 -64 -62 -59 -57 -54 -51 -47 -43 -42 -43 -28 -4 19 -0 -19 -33 -43 -45 -44 -43 -39 -35 -32 -29 -29 -29 -28 -27 -28 -29 -34 -38 -39 -36 -28 -26 -29 -35 -39 -40 -37 -31 -24 -20 -28 -39 -48 -54 -55 -10 -11 -12 -12 -10 -9 -8 -7 -7 -8 -10 -11 -11 -11 -12 -12 -12 -11 -11 -12 -13 -13 -10 -7 -3 -1 -1 -2 -4 -5 -7 -7 -6 -4 -2 -2 -2 -2 -2 -2 -4 -5 -4 -3 -2 -3 -4 -5 -4 -1 0 -0 -3 -4 -5 -4 -2 -2 -2 -2 -4 -6 -5 -5 -5 -5 -7 -10 -10 -7 -3 -3 -5 -8 -9 -7 -5 -4 -4 -3 -2 -2 -3 -5 -5 -4 -4 -3 -4 -4 -3 -2 -1 1 3 3 2 -1 -3 -5 -5 -5 -2 -1 0 0 -1 -1 -1 -1 -2 -3 -4 -5 -6 -7 -6 -5 -4 -3 -2 -1 1 2 3 2 2 1 -0 -2 -3 -3 -3 -2 1 3 5 6 4 1 -1 -0 3 3 1 -0 -1 -2 -3 -3 -3 -3 -3 -3 -4 -4 -5 -6 -7 -7 -8 -8 -9 -10 -9 -9 -8 -8 -8 -8 -7 -7 -5 -4 -3 -1 0 1 2 3 4 5 4 2 -0 -3 -5 -6 -6 -7 -7 -6 -6 -4 -3 -1 1 2 4 6 9 10 11 11 10 9 8 7 6 5 5 5 7 8 8 7 5 2 -1 -3 -3 1 6 10 13 15 12 8 5 4 3 1 -1 -3 -3 -2 2 6 11 14 17 17 15 13 11 10 11 13 13 13 13 13 16 19 24 30 35 36 37 37 37 40 45 48 49 51 52 51 50 48 46 43 40 36 33 33 34 36 38 40 41 41 41 41 40 39 41 46 49 53 56 59 61 63 60 54 55 49 44 41 39 37 37 38 41 44 47 48 49 50 51 50 47 41 37 30 24 19 21 27 32 36 38 37 34 29 23 19 12 3 -6 -14 -18 -20 -21 -19 -15 -13 -13 -14 -13 -8 0 10 15 8 -4 -18 -29 -33 -30 -21 -6 15 20 15 2 -16 -30 -43 -53 -61 -64 -65 -64 -61 -58 -56 -53 -50 -46 -43 -42 -38 -26 14 8 -6 -21 -34 -39 -41 -42 -41 -38 -34 -30 -28 -29 -29 -30 -29 -27 -29 -34 -38 -38 -32 -28 -29 -32 -38 -40 -40 -36 -30 -20 -20 -27 -39 -49 -53 -10 -11 -12 -12 -10 -9 -8 -7 -7 -8 -10 -11 -11 -11 -12 -12 -11 -11 -12 -13 -14 -13 -10 -6 -3 -1 -2 -3 -5 -7 -8 -7 -5 -4 -3 -2 -2 -2 -2 -2 -4 -5 -4 -3 -2 -3 -5 -5 -3 -1 -0 -1 -4 -5 -5 -4 -2 -2 -2 -3 -5 -7 -4 -4 -6 -7 -9 -10 -9 -5 -2 -5 -8 -10 -8 -6 -5 -5 -4 -4 -4 -3 -3 -4 -4 -3 -3 -3 -4 -4 -3 -1 1 4 5 4 2 -2 -5 -6 -5 -3 0 1 -1 -3 -3 -2 -2 -3 -5 -7 -10 -12 -14 -14 -14 -13 -12 -12 -10 -8 -5 -2 0 1 1 1 -0 -1 -1 -1 -1 0 1 3 4 4 3 2 3 5 3 -2 -5 -6 -6 -7 -6 -6 -4 -3 -2 -1 -1 -1 -1 -2 -3 -3 -4 -4 -5 -5 -5 -6 -6 -7 -7 -8 -8 -8 -7 -7 -6 -5 -4 -3 -1 0 2 3 4 4 4 2 0 -2 -5 -8 -9 -10 -11 -11 -10 -8 -6 -4 -1 2 5 7 10 11 12 12 11 10 9 7 6 5 6 7 8 9 10 7 4 0 -3 -4 -1 2 7 12 15 15 13 10 6 5 3 1 -1 -2 -1 1 3 7 11 14 16 16 14 11 10 11 12 13 14 14 15 16 19 23 31 35 38 38 37 38 42 45 46 48 49 50 50 49 47 45 42 39 36 36 36 37 38 40 41 40 40 39 37 36 36 42 46 49 52 54 56 57 57 58 58 50 44 40 40 36 34 35 41 44 45 46 48 50 52 53 52 48 44 38 30 24 21 23 27 32 36 37 37 34 29 22 16 8 0 -7 -13 -17 -19 -20 -18 -17 -17 -18 -18 -15 -9 1 12 13 7 -6 -21 -30 -32 -30 -21 0 16 21 13 -3 -18 -32 -45 -57 -64 -67 -67 -64 -61 -58 -55 -53 -50 -46 -42 -40 -37 -0 10 7 -6 -21 -31 -38 -42 -44 -42 -38 -33 -29 -28 -29 -30 -30 -27 -26 -30 -36 -39 -37 -33 -31 -31 -35 -38 -40 -39 -35 -24 -17 -18 -28 -40 -47 -10 -11 -12 -12 -11 -10 -9 -8 -8 -8 -10 -11 -12 -11 -11 -11 -11 -11 -13 -14 -15 -13 -9 -5 -2 -1 -2 -4 -6 -8 -8 -7 -5 -3 -2 -2 -2 -2 -2 -3 -5 -5 -4 -4 -3 -4 -5 -5 -4 -0 -0 -2 -5 -5 -4 -3 -3 -3 -4 -4 -4 -5 -4 -4 -6 -8 -10 -10 -8 -5 -4 -8 -10 -9 -6 -4 -3 -4 -3 -3 -4 -4 -3 -3 -3 -2 -2 -3 -3 -3 -2 -1 1 3 3 2 -1 -5 -6 -6 -5 -2 -0 -2 -4 -7 -7 -5 -5 -6 -8 -10 -12 -13 -13 -13 -13 -13 -13 -14 -13 -11 -8 -4 -1 1 1 0 -1 -1 -1 -0 0 1 1 1 2 3 5 6 7 6 -1 -5 -7 -6 -7 -7 -7 -7 -6 -5 -4 -3 -1 -0 0 1 1 1 1 0 0 0 -0 -1 -2 -2 -3 -4 -5 -5 -6 -6 -6 -6 -6 -5 -4 -2 -0 1 3 4 5 5 5 4 2 -1 -4 -6 -8 -10 -11 -12 -12 -11 -9 -6 -2 2 5 8 10 11 12 12 11 10 9 7 6 5 6 8 10 11 9 6 2 -2 -3 -3 -0 5 10 15 18 19 15 12 9 6 4 3 2 2 2 2 4 7 12 15 16 15 12 10 12 13 15 15 16 16 16 19 25 32 36 39 39 39 42 43 44 45 46 47 49 49 47 45 44 43 40 40 40 39 39 40 40 40 39 38 37 35 34 38 41 45 47 50 53 54 53 50 46 38 27 15 25 34 35 34 39 42 43 44 46 49 51 53 55 53 49 43 36 30 23 20 22 27 33 36 37 36 33 26 19 12 5 -2 -8 -13 -17 -20 -20 -20 -20 -20 -20 -20 -17 -9 3 11 12 4 -10 -22 -30 -33 -31 -18 5 19 19 9 -6 -20 -35 -51 -60 -66 -68 -66 -63 -59 -56 -53 -52 -49 -44 -38 -36 -22 5 20 10 -6 -20 -31 -40 -45 -45 -43 -38 -32 -28 -28 -29 -30 -28 -26 -28 -33 -39 -39 -37 -34 -32 -33 -36 -38 -39 -38 -29 -19 -14 -19 -31 -39 -10 -11 -11 -11 -11 -10 -9 -8 -8 -9 -10 -11 -11 -11 -11 -11 -11 -11 -13 -15 -16 -13 -9 -5 -2 -1 -3 -5 -7 -8 -8 -6 -3 -2 -2 -2 -2 -2 -2 -4 -6 -5 -4 -4 -4 -5 -5 -4 -3 -0 -1 -3 -5 -5 -3 -3 -2 -4 -4 -5 -4 -3 -3 -3 -6 -9 -11 -10 -8 -6 -7 -9 -9 -7 -3 -1 -1 -2 -3 -3 -4 -4 -3 -3 -3 -2 -2 -2 -2 -2 -1 -1 0 1 1 -0 -3 -4 -5 -5 -4 -2 -2 -4 -7 -9 -9 -7 -7 -7 -8 -8 -9 -9 -8 -8 -8 -8 -9 -10 -10 -9 -7 -4 -1 1 2 2 0 -0 -1 -1 -1 -1 -1 -2 -1 2 5 7 5 0 -2 -2 -2 -3 -5 -6 -6 -6 -6 -6 -6 -5 -4 -3 -2 -0 1 2 2 2 3 3 2 2 2 1 1 -0 -1 -2 -3 -4 -5 -5 -6 -6 -6 -4 -3 -1 1 3 4 5 6 7 6 5 3 1 -1 -3 -5 -7 -9 -10 -11 -10 -8 -4 0 5 8 10 11 12 12 11 11 10 8 6 6 6 8 10 12 11 9 5 1 -2 -3 -1 3 9 15 20 20 19 16 13 11 10 8 8 7 5 2 1 4 9 15 17 16 13 13 14 15 16 17 17 17 17 20 26 32 37 40 41 42 42 42 43 43 44 46 47 47 45 45 46 45 44 43 42 41 41 40 40 38 37 36 34 31 33 37 40 43 46 48 50 50 49 42 25 1 -20 -5 24 38 35 36 40 41 42 44 46 48 50 53 53 51 47 41 35 27 21 18 23 28 33 36 36 36 30 24 17 9 3 -3 -9 -14 -19 -21 -22 -22 -21 -22 -22 -21 -18 -7 3 11 11 1 -14 -26 -34 -37 -29 -9 11 21 18 6 -9 -25 -41 -53 -61 -66 -67 -64 -61 -56 -52 -51 -51 -47 -40 -34 -42 -1 36 26 8 -8 -23 -36 -43 -45 -45 -42 -37 -30 -27 -26 -28 -28 -26 -27 -30 -36 -39 -39 -37 -32 -30 -32 -35 -38 -38 -34 -26 -17 -15 -23 -31 -10 -10 -10 -11 -11 -10 -10 -9 -9 -10 -10 -10 -11 -11 -11 -11 -11 -12 -14 -15 -15 -13 -8 -4 -2 -2 -4 -6 -8 -8 -7 -5 -3 -2 -2 -2 -2 -2 -3 -5 -6 -5 -4 -4 -4 -6 -6 -4 -3 -2 -3 -4 -5 -4 -2 -2 -2 -4 -5 -5 -4 -3 -3 -4 -6 -10 -11 -10 -8 -7 -8 -10 -8 -5 -1 -0 -1 -3 -4 -6 -5 -4 -3 -3 -3 -3 -2 -2 -1 -1 -1 -0 -0 -0 -1 -1 -2 -2 -2 -3 -3 -3 -4 -5 -7 -7 -7 -7 -6 -6 -5 -5 -5 -5 -5 -5 -6 -6 -7 -7 -7 -6 -5 -3 -1 1 2 3 2 1 -0 -1 -3 -3 -5 -6 -7 -3 1 2 0 -1 0 1 1 -1 -3 -4 -4 -5 -5 -6 -6 -6 -5 -4 -3 -2 -1 0 1 2 2 2 2 2 2 2 1 1 0 -0 -1 -2 -3 -4 -6 -7 -7 -7 -6 -4 -2 -0 2 3 4 5 6 7 6 5 4 3 1 -1 -3 -6 -7 -9 -9 -8 -6 -1 4 8 10 11 11 11 11 12 11 10 8 6 7 8 11 13 13 11 8 4 0 -1 -1 2 8 15 21 23 24 23 22 20 18 16 15 13 10 5 1 2 7 14 18 16 16 15 16 18 18 19 19 17 17 21 26 31 38 41 42 42 41 41 41 41 42 44 45 46 47 48 47 46 45 43 42 41 41 40 38 36 34 31 27 29 32 36 39 41 44 46 47 48 44 30 9 -14 -27 2 28 35 32 36 39 40 41 44 46 48 50 51 52 49 44 38 32 25 19 19 23 28 33 34 37 34 29 22 15 8 2 -5 -11 -17 -21 -23 -23 -23 -23 -24 -24 -23 -17 -6 4 12 8 -5 -20 -31 -37 -33 -21 -5 14 20 15 3 -13 -29 -43 -54 -62 -66 -65 -62 -57 -50 -48 -49 -49 -46 -35 -28 14 57 38 20 3 -14 -29 -40 -45 -47 -45 -40 -33 -28 -24 -23 -25 -25 -25 -26 -31 -35 -38 -38 -33 -29 -29 -32 -35 -37 -36 -32 -23 -17 -19 -24 -10 -9 -10 -11 -11 -10 -10 -10 -10 -9 -10 -10 -10 -11 -10 -11 -11 -12 -14 -15 -16 -14 -9 -4 -2 -2 -4 -6 -7 -8 -7 -4 -3 -3 -3 -3 -1 -2 -3 -5 -6 -5 -4 -4 -6 -8 -7 -5 -3 -4 -5 -5 -5 -3 -2 -2 -3 -4 -5 -5 -5 -4 -4 -5 -8 -11 -11 -9 -8 -7 -9 -9 -6 -4 -2 -2 -3 -5 -7 -8 -6 -4 -3 -3 -3 -3 -3 -2 -2 -1 -1 -1 -2 -3 -3 -1 1 1 1 -1 -3 -4 -5 -5 -5 -4 -4 -4 -4 -3 -2 -2 -3 -4 -4 -5 -6 -7 -7 -7 -7 -6 -5 -4 -2 1 2 4 3 2 1 -1 -3 -4 -5 -6 -9 -4 -2 -2 -2 -0 0 0 -1 -1 -1 -2 -3 -3 -4 -5 -5 -5 -4 -4 -4 -4 -3 -2 -1 -0 0 0 0 0 0 -0 -0 -1 -1 -0 -1 -1 -2 -3 -5 -7 -8 -9 -9 -8 -7 -4 -2 -0 1 2 4 5 6 6 6 6 4 3 1 -1 -3 -5 -7 -8 -9 -6 -1 4 8 10 11 11 12 12 13 14 13 12 10 9 9 11 13 15 14 12 8 5 2 0 2 8 15 22 26 29 30 29 27 24 23 22 20 16 10 5 4 8 15 19 20 20 18 19 20 21 21 19 17 17 19 24 33 39 41 41 40 41 40 40 39 40 42 45 47 48 48 47 46 44 44 43 42 40 38 37 34 30 25 27 30 34 35 36 39 42 44 46 45 37 22 -2 -17 -27 -14 25 27 31 35 38 40 41 43 45 48 49 52 51 47 42 37 31 25 20 19 22 27 30 36 36 33 28 21 14 7 -0 -8 -15 -20 -23 -25 -25 -26 -26 -26 -25 -22 -15 -5 6 10 2 -12 -27 -35 -34 -29 -19 -4 11 17 13 0 -20 -33 -45 -57 -64 -65 -63 -58 -50 -46 -46 -47 -50 -44 -32 16 77 47 28 12 -3 -20 -34 -42 -46 -46 -43 -37 -31 -25 -20 -21 -21 -22 -22 -26 -31 -34 -37 -33 -30 -28 -30 -33 -36 -37 -35 -30 -22 -20 -20 -9 -9 -10 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -9 -10 -10 -11 -12 -13 -15 -16 -15 -9 -4 -2 -2 -4 -6 -7 -8 -6 -4 -4 -4 -4 -3 -1 -2 -4 -6 -6 -5 -4 -5 -7 -9 -7 -5 -3 -5 -6 -6 -4 -2 -2 -3 -4 -5 -6 -7 -7 -6 -6 -8 -10 -11 -10 -8 -6 -6 -8 -8 -6 -4 -3 -5 -6 -7 -8 -9 -6 -4 -4 -4 -4 -4 -4 -4 -3 -1 -1 -3 -5 -6 -4 -1 3 4 2 -0 -3 -5 -6 -4 -2 -1 -0 -1 -1 -2 -1 -2 -4 -5 -7 -8 -9 -10 -10 -10 -9 -8 -7 -5 -2 0 2 4 5 4 3 1 -1 -3 -3 -3 -4 -2 -3 -2 -1 -1 -2 -3 -3 -1 0 -0 -2 -3 -4 -4 -5 -5 -6 -7 -8 -9 -9 -9 -7 -5 -4 -3 -2 -2 -2 -2 -2 -2 -2 -2 -1 -1 -1 -2 -3 -5 -7 -8 -9 -10 -9 -8 -6 -3 -2 -1 1 2 4 5 6 6 6 5 4 2 1 -1 -4 -6 -8 -8 -5 -1 4 8 11 12 12 13 15 16 18 18 17 14 12 11 12 15 17 18 17 15 10 6 3 4 9 16 23 30 33 34 33 30 29 29 28 26 22 14 9 7 10 16 20 22 22 22 22 22 22 22 20 18 16 18 26 33 38 40 40 40 41 40 39 40 42 44 45 46 46 46 46 46 46 45 44 43 41 40 36 32 28 29 31 32 31 32 35 38 41 43 44 41 33 13 -7 -22 -30 -33 15 28 31 37 39 40 42 44 46 48 51 52 49 45 42 37 32 26 21 19 20 25 33 36 35 32 28 20 12 5 -4 -12 -18 -23 -27 -27 -28 -28 -27 -26 -25 -21 -14 -4 6 6 -3 -18 -28 -32 -32 -29 -19 -1 12 15 9 -7 -21 -37 -52 -59 -63 -63 -59 -52 -47 -44 -44 -47 -49 -42 -4 65 43 29 17 6 -8 -23 -35 -42 -44 -43 -40 -35 -28 -21 -18 -18 -19 -20 -23 -27 -30 -35 -34 -32 -30 -29 -30 -33 -36 -36 -33 -28 -24 -20 -10 -9 -10 -11 -12 -11 -11 -11 -10 -10 -10 -10 -10 -9 -9 -10 -11 -12 -13 -14 -15 -14 -8 -4 -2 -3 -5 -7 -8 -8 -6 -4 -4 -5 -4 -3 -2 -3 -5 -7 -6 -5 -5 -6 -7 -8 -6 -4 -4 -7 -7 -5 -3 -2 -2 -4 -6 -7 -8 -9 -9 -9 -8 -10 -12 -12 -9 -6 -4 -5 -8 -8 -7 -6 -6 -6 -7 -7 -7 -7 -5 -4 -5 -6 -6 -5 -5 -5 -4 -3 -3 -5 -7 -7 -4 -0 4 4 2 -1 -4 -6 -5 -3 -1 1 2 0 -1 -2 -2 -4 -6 -8 -9 -11 -12 -12 -12 -12 -11 -9 -8 -6 -4 -1 2 4 6 6 6 5 2 1 1 1 1 0 -1 -2 -1 -3 -4 -4 -3 -1 0 -0 -1 -2 -3 -4 -5 -6 -8 -10 -13 -15 -16 -15 -14 -12 -10 -8 -6 -4 -3 -2 -2 -1 -1 -1 -1 -2 -2 -1 -2 -3 -4 -5 -6 -7 -8 -8 -7 -5 -3 -1 0 1 2 3 4 5 6 6 6 4 3 1 -1 -3 -5 -7 -6 -4 0 5 9 12 14 15 17 19 21 23 23 21 19 16 14 15 18 21 23 23 20 17 12 9 8 11 18 26 31 35 36 35 34 34 34 34 32 25 19 14 12 15 19 22 24 24 24 24 24 24 23 21 17 15 20 26 31 36 39 40 41 41 41 41 41 42 44 43 44 45 47 48 49 49 49 48 46 45 41 37 35 34 34 33 30 30 32 34 37 39 42 43 39 28 10 -7 -17 -13 25 33 30 35 39 40 41 43 45 48 50 52 50 48 45 42 38 32 26 20 17 21 28 33 35 35 32 26 18 10 1 -8 -15 -21 -27 -28 -30 -30 -29 -27 -26 -23 -20 -14 1 8 5 -6 -17 -26 -32 -33 -28 -13 3 14 13 4 -9 -26 -43 -53 -58 -59 -57 -53 -47 -43 -40 -42 -46 -46 -37 -19 6 17 18 13 3 -11 -24 -34 -40 -41 -41 -37 -32 -24 -18 -16 -17 -19 -21 -24 -28 -32 -34 -34 -32 -29 -29 -31 -33 -35 -34 -32 -28 -22 -10 -10 -11 -12 -13 -12 -11 -11 -10 -9 -10 -10 -9 -8 -9 -9 -11 -12 -13 -14 -14 -12 -7 -3 -3 -4 -6 -9 -9 -8 -5 -4 -5 -5 -5 -3 -2 -4 -6 -8 -6 -5 -5 -7 -8 -6 -5 -5 -6 -7 -6 -4 -2 -2 -2 -4 -6 -8 -9 -9 -9 -10 -10 -12 -13 -12 -7 -4 -3 -5 -8 -10 -10 -8 -7 -7 -7 -7 -6 -4 -3 -4 -5 -7 -7 -6 -6 -6 -5 -4 -4 -5 -7 -6 -4 0 4 4 1 -2 -4 -6 -4 -2 -0 0 0 -1 -2 -3 -4 -6 -7 -8 -10 -12 -12 -11 -9 -8 -8 -8 -7 -7 -6 -4 -0 3 6 8 9 9 7 5 3 1 1 0 -0 -1 -2 -4 -3 -2 -0 0 0 0 0 -0 -1 -3 -4 -6 -9 -11 -14 -17 -19 -19 -18 -16 -14 -11 -8 -6 -4 -3 -2 -1 -1 -0 -0 -1 -1 -1 -1 -2 -3 -3 -4 -4 -5 -5 -5 -4 -3 -1 0 2 2 2 3 3 5 6 7 7 5 4 2 -0 -2 -4 -5 -5 -3 1 7 11 15 17 19 21 24 26 27 26 24 22 20 19 19 21 24 26 27 25 23 19 14 12 13 19 26 33 37 38 38 38 39 40 39 35 29 22 18 17 19 22 24 26 27 27 26 25 24 22 20 17 17 20 24 30 35 38 40 41 41 41 40 41 42 42 42 44 47 49 50 51 52 52 51 50 47 44 42 39 36 34 31 30 30 31 34 36 39 41 41 36 25 13 7 20 43 45 37 35 38 40 41 42 44 47 49 50 50 49 47 45 42 37 30 24 19 21 25 29 32 35 34 30 24 16 6 -2 -10 -18 -25 -29 -31 -31 -30 -29 -27 -25 -23 -17 -4 5 7 3 -8 -19 -29 -34 -32 -21 -7 7 14 11 1 -16 -32 -43 -49 -50 -50 -50 -46 -41 -37 -38 -39 -39 -34 -15 10 18 17 15 9 0 -12 -24 -33 -38 -39 -38 -35 -27 -20 -16 -15 -16 -19 -23 -27 -31 -34 -35 -34 -31 -30 -31 -32 -34 -33 -33 -30 -25 -10 -11 -12 -13 -13 -12 -12 -11 -10 -10 -10 -10 -10 -9 -8 -9 -11 -12 -14 -14 -13 -10 -5 -3 -3 -5 -7 -10 -10 -8 -5 -4 -5 -6 -5 -4 -4 -5 -7 -8 -7 -5 -5 -7 -8 -6 -5 -5 -6 -6 -4 -2 -1 -1 -3 -4 -6 -7 -8 -8 -8 -9 -10 -11 -11 -8 -4 -3 -4 -7 -11 -12 -10 -8 -6 -5 -6 -6 -5 -3 -3 -4 -5 -6 -6 -5 -5 -4 -4 -4 -4 -4 -5 -6 -4 -1 2 3 1 -1 -3 -4 -4 -3 -2 -1 -3 -3 -4 -5 -5 -6 -6 -6 -7 -8 -8 -7 -4 -3 -3 -4 -6 -7 -7 -6 -4 0 4 8 11 12 11 8 3 -1 -3 -2 -1 -2 -3 -2 1 3 3 2 1 1 2 1 1 -1 -2 -4 -6 -9 -12 -15 -17 -17 -17 -16 -15 -12 -9 -7 -5 -3 -2 -1 -0 0 1 1 1 1 0 -1 -2 -3 -4 -4 -4 -4 -3 -2 -0 1 2 3 4 4 4 3 4 5 7 8 7 6 4 3 0 -2 -4 -5 -5 -2 3 8 13 18 21 24 26 28 29 29 28 27 25 23 22 23 25 28 30 31 30 27 23 20 17 19 24 30 35 37 39 40 42 45 44 41 36 30 25 22 22 23 25 28 30 31 29 27 25 23 22 19 17 17 19 24 29 34 38 40 42 41 41 40 40 41 42 43 46 48 49 51 53 54 54 53 51 49 46 42 39 37 34 32 30 30 31 34 37 39 40 39 33 27 23 33 47 51 44 38 37 38 40 42 43 45 47 48 49 48 48 47 44 40 35 29 24 23 24 26 28 31 33 32 29 22 13 4 -4 -13 -20 -27 -30 -32 -32 -30 -29 -28 -26 -18 -8 1 5 3 -2 -12 -24 -32 -33 -27 -16 -2 11 16 11 -2 -21 -34 -41 -43 -42 -43 -42 -38 -34 -35 -35 -31 -20 9 25 27 18 13 12 8 -1 -13 -24 -32 -36 -38 -36 -29 -23 -17 -14 -14 -17 -21 -27 -31 -34 -35 -35 -33 -33 -32 -31 -32 -32 -33 -31 -26