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 2 8 12 16 16 14 12 11 14 16 14 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11 21 26 31 36 43 44 32 16 7 4 6 4 3 2 1 1 5 6 5 2 2 4 7 8 8 4 0 0 0 0 0 0 0 0 0 0 0 0 1 5 8 4 1 0 0 0 0 3 6 9 7 0 0 0 0 0 0 0 2 4 11 20 23 23 22 22 22 23 26 29 32 35 36 36 36 37 40 42 42 40 37 34 31 30 29 30 30 30 29 27 25 24 25 27 29 29 29 28 27 26 25 23 21 21 21 20 19 17 16 16 17 18 20 21 21 21 19 18 18 19 21 26 40 43 45 45 43 40 32 39 43 46 48 48 46 44 42 42 41 37 25 22 25 34 44 46 46 45 45 46 46 46 46 46 47 48 50 52 55 57 59 61 62 62 61 60 60 60 60 62 65 69 71 71 70 69 71 75 78 79 78 77 76 75 75 75 75 73 68 63 58 56 55 54 53 54 56 60 64 67 69 69 69 69 72 81 93 101 98 84 65 57 65 74 79 76 63 40 19 9 9 14 18 18 15 13 12 13 17 21 24 27 30 33 37 38 39 40 41 42 43 44 45 47 49 54 64 76 89 99 102 95 80 66 59 58 62 67 72 75 78 80 82 84 86 88 91 92 91 88 87 88 91 96 102 99 98 96 94 92 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 11 14 16 15 13 13 15 17 14 7 0 0 0 0 0 0 0 0 0 2 2 2 0 0 0 0 0 0 0 0 0 5 13 21 30 39 44 34 19 9 6 3 3 1 0 0 0 0 2 2 1 0 1 5 9 8 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 8 4 0 0 0 0 0 4 9 8 1 0 0 0 0 0 0 4 8 14 20 21 22 21 21 22 23 26 29 32 34 35 36 36 38 40 40 40 39 38 35 33 32 32 32 32 32 30 28 26 25 25 27 28 29 29 28 27 25 23 22 21 21 22 21 20 18 17 16 16 17 18 20 22 23 23 22 23 25 27 30 41 44 45 45 44 40 28 31 39 44 46 47 46 44 42 41 41 40 39 29 34 42 44 46 46 46 48 50 51 52 51 49 48 48 49 50 52 54 57 59 61 62 61 60 59 59 60 62 66 69 71 70 67 64 64 66 70 73 74 74 73 72 72 73 75 74 71 64 58 53 51 50 49 50 53 58 63 66 68 67 65 64 67 75 86 98 108 113 110 96 79 60 44 38 40 34 25 19 18 22 26 26 23 20 17 16 16 17 18 19 21 23 26 28 31 34 36 38 40 42 42 42 41 42 45 51 60 69 80 89 91 86 76 68 65 66 72 78 82 84 83 80 78 79 81 84 86 88 89 90 92 96 102 100 100 100 100 99 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 9 10 12 12 12 13 16 17 13 7 1 0 0 0 0 0 0 0 0 4 6 5 1 0 0 0 0 0 0 0 0 0 5 14 27 39 41 22 8 4 3 0 0 0 0 0 0 0 0 0 0 0 1 7 8 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 4 0 0 0 0 0 3 8 9 2 0 0 0 0 0 0 6 14 18 19 20 20 20 21 22 24 27 30 32 34 34 35 37 38 40 40 40 39 38 36 34 34 34 34 34 32 31 29 27 25 25 27 28 29 29 29 28 25 23 22 21 22 22 23 22 20 18 16 16 17 19 21 24 26 27 27 36 43 44 44 44 45 45 46 45 42 33 28 35 43 45 47 46 45 44 43 42 42 42 40 41 42 44 46 47 49 51 54 57 58 57 55 53 51 50 50 52 54 56 58 60 61 60 60 59 59 61 64 67 70 70 68 65 61 60 61 64 67 70 71 70 69 69 69 71 73 71 65 57 50 47 46 47 50 54 59 64 64 62 60 60 61 66 73 81 92 105 120 131 121 88 47 14 10 18 27 29 29 30 35 40 40 38 34 32 29 24 21 19 19 19 20 20 20 22 24 28 32 36 39 40 40 41 41 40 39 40 44 52 64 78 87 91 88 80 75 77 80 83 84 81 78 76 75 76 78 81 84 86 87 89 92 97 95 96 98 98 98 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 6 7 8 9 10 13 15 14 10 5 0 0 0 0 0 0 0 0 0 3 6 4 0 1 1 0 0 0 0 0 0 0 6 22 36 30 13 2 0 0 0 0 0 0 0 0 0 0 0 0 1 3 7 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 2 7 10 8 2 0 0 0 0 0 12 19 20 19 19 19 19 21 23 26 29 31 32 33 34 35 37 39 40 40 40 39 36 33 33 33 34 34 33 32 31 29 27 25 25 26 27 28 29 29 28 25 23 22 22 22 24 24 23 21 18 16 16 18 20 22 25 28 39 43 46 49 49 48 46 45 45 46 46 44 41 34 36 42 44 46 46 46 45 45 45 45 45 44 44 44 45 46 48 51 54 56 60 61 62 61 58 56 54 52 52 54 55 57 58 59 59 58 58 59 61 65 68 70 69 66 63 59 58 59 61 64 67 68 69 68 67 67 68 70 69 65 57 50 45 45 48 52 57 62 62 58 54 52 54 60 67 73 77 81 88 102 120 117 87 41 3 0 8 22 29 32 35 41 46 48 49 50 49 46 40 34 30 29 28 26 24 22 22 22 24 27 30 33 35 38 40 41 40 38 35 34 35 42 53 64 75 82 85 83 82 82 83 82 79 77 76 75 75 75 78 82 85 86 87 88 89 88 89 89 90 92 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 2 7 11 13 12 8 0 0 0 0 0 0 0 0 0 0 0 0 0 5 6 3 0 0 0 0 0 0 3 13 28 13 3 0 0 0 0 1 1 1 0 0 0 0 0 1 3 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 3 9 9 3 0 0 0 0 0 13 20 20 19 18 18 19 21 24 28 30 32 32 32 33 35 37 39 40 40 39 37 33 31 31 32 32 32 30 30 28 27 25 24 24 26 27 28 29 29 27 25 23 22 21 22 24 24 23 21 18 17 17 19 21 23 24 26 32 41 47 48 49 47 46 44 44 45 46 45 43 42 41 42 43 45 46 46 46 46 47 47 48 48 48 47 46 47 49 52 54 56 58 61 63 64 63 60 57 54 53 54 55 56 56 57 57 57 57 58 60 64 67 68 67 65 61 59 59 60 62 64 66 68 69 69 69 67 67 68 68 66 60 52 47 47 51 57 63 64 58 50 45 45 50 59 66 69 68 66 67 74 88 92 76 45 14 6 11 20 26 30 33 37 42 46 50 53 56 56 53 49 47 45 43 41 37 34 32 32 31 31 30 29 30 32 35 36 37 37 36 34 32 32 34 39 47 56 65 71 75 78 78 78 76 76 76 75 74 74 76 82 86 89 88 87 85 84 83 82 82 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 2 6 9 11 9 0 0 0 0 0 0 0 0 0 0 0 0 0 6 9 9 7 4 0 0 0 2 7 12 15 8 2 0 0 0 0 6 6 3 0 0 0 0 0 4 8 8 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 1 7 9 6 2 0 0 0 0 12 20 20 19 17 18 20 23 26 29 31 32 32 32 33 35 37 38 38 38 36 32 30 29 30 30 29 28 26 26 25 24 23 23 24 26 27 28 28 27 26 24 23 22 21 22 23 23 22 20 18 17 18 19 20 21 22 22 24 30 34 35 34 33 31 38 44 46 46 45 44 44 43 42 42 44 45 47 47 47 47 49 50 51 51 50 49 49 50 52 53 54 55 57 60 63 63 62 58 55 53 53 54 55 55 55 55 55 56 57 59 62 65 65 64 62 60 60 61 63 64 65 68 70 71 70 69 66 65 66 67 66 62 57 54 54 59 64 68 64 52 42 38 41 50 59 62 62 57 53 51 56 64 68 64 52 38 25 20 20 23 27 29 31 35 41 47 51 53 54 55 55 56 56 56 54 51 49 47 46 44 40 38 35 34 34 32 31 31 32 34 35 33 30 28 27 30 34 42 50 56 62 66 70 71 72 72 71 71 71 74 80 87 92 92 91 88 86 84 82 80 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 0 2 3 5 6 0 0 0 0 0 0 0 0 0 0 0 0 0 6 10 12 11 8 4 1 0 3 8 12 14 9 3 0 0 1 5 10 10 5 0 0 0 0 4 8 9 8 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 3 7 7 4 0 0 0 0 11 19 19 18 17 18 21 25 28 30 31 31 32 33 34 35 36 37 36 34 31 29 28 30 30 29 27 24 22 22 21 21 22 23 25 25 25 24 24 24 23 22 21 21 21 22 22 21 20 18 17 17 17 18 18 17 16 16 18 20 22 24 25 25 25 29 36 44 46 46 44 44 43 42 41 42 44 46 48 47 47 48 50 52 53 53 52 51 52 52 52 52 52 52 54 56 58 60 58 54 53 53 53 54 53 53 53 53 54 56 58 60 61 60 58 58 59 62 64 65 66 66 70 72 72 68 64 60 59 61 63 64 63 61 60 62 65 67 67 59 47 39 38 43 52 58 57 52 46 41 41 46 54 60 61 57 48 36 26 22 23 25 26 26 29 35 42 46 48 49 51 53 56 58 59 59 58 57 56 55 53 50 47 46 45 44 41 38 34 33 33 35 35 33 32 30 30 30 32 36 41 47 53 58 62 64 65 65 66 69 72 77 84 90 93 94 94 93 91 89 85 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 1 2 0 3 4 2 0 0 0 0 0 0 0 0 0 5 10 12 13 11 8 4 1 3 8 12 14 10 4 0 0 1 8 11 10 5 0 0 0 0 4 7 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 6 7 4 0 0 0 0 10 17 18 18 18 21 24 26 28 30 31 32 33 33 34 34 35 34 32 29 27 27 29 31 31 28 24 21 19 19 19 20 22 23 23 22 21 21 21 21 20 20 20 21 22 22 22 20 18 17 17 17 16 16 15 13 11 11 12 14 16 17 19 21 23 26 33 42 43 43 43 42 42 40 39 39 42 45 47 47 47 47 49 51 52 53 53 53 53 53 52 50 49 48 49 50 51 53 54 53 52 52 52 52 50 50 50 51 53 55 58 58 56 54 52 53 58 62 64 64 65 66 70 71 68 62 54 50 50 53 56 59 61 62 63 63 62 61 58 51 45 42 44 50 56 56 51 44 37 34 37 44 53 60 62 57 46 35 28 26 27 27 25 25 28 32 37 41 43 44 46 49 52 55 57 58 58 57 57 57 55 54 53 53 53 54 52 48 46 44 43 42 41 41 42 43 43 41 39 38 38 41 44 48 52 54 57 59 62 66 69 72 76 82 86 90 92 93 93 92 89 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 6 8 6 4 3 3 2 1 0 0 0 0 4 9 13 15 15 11 7 2 1 5 11 14 12 8 4 2 0 3 4 3 2 0 0 3 4 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 5 6 4 0 0 0 0 9 16 18 19 22 24 26 27 28 29 31 32 33 33 33 33 33 32 29 27 26 29 32 32 30 25 21 18 17 17 18 20 22 22 20 18 18 18 19 18 18 19 20 22 23 23 22 21 20 19 19 18 16 15 13 12 10 10 10 10 11 13 15 18 21 24 29 34 33 33 37 40 36 29 27 35 39 42 44 45 46 46 47 48 50 51 52 53 54 53 52 50 48 46 45 45 46 48 49 50 51 51 51 50 47 46 46 48 52 55 58 57 53 48 45 49 55 59 61 62 62 64 67 66 60 51 43 40 40 44 48 52 55 57 58 56 53 50 46 44 45 48 53 57 56 50 42 36 32 33 38 46 54 59 59 53 44 35 31 31 32 32 29 28 29 32 34 36 40 41 43 46 49 52 54 54 55 55 55 54 53 52 52 53 55 56 54 53 52 52 53 53 52 53 54 55 56 54 51 48 46 45 45 46 48 50 53 56 61 64 66 68 68 70 74 78 81 84 85 84 83 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 0 0 0 0 0 0 4 7 8 8 8 8 7 4 1 0 0 0 4 8 12 16 17 14 9 3 0 2 9 12 13 12 9 5 0 0 0 0 0 1 4 8 8 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 5 3 0 0 0 0 8 17 20 24 26 27 26 26 26 28 30 32 33 33 32 33 32 30 28 27 29 32 33 31 26 21 17 16 16 16 17 19 21 20 17 16 17 17 17 17 18 20 21 22 23 23 23 23 22 22 22 20 18 16 15 14 13 13 12 12 12 12 14 17 19 22 23 24 24 25 29 30 28 23 23 26 33 39 42 43 44 44 45 45 47 48 50 52 53 53 53 51 48 46 44 43 44 45 47 48 50 50 49 48 45 44 44 46 50 55 58 56 50 43 40 45 52 56 57 57 58 61 62 60 53 44 34 32 33 36 40 43 46 47 47 44 41 37 36 39 44 50 55 55 48 40 34 31 31 36 42 47 51 53 53 49 44 39 36 34 34 34 33 33 32 32 32 34 37 40 43 46 48 50 51 52 52 53 54 52 50 49 49 50 51 51 49 48 50 53 55 56 57 58 60 60 60 58 58 57 56 53 52 51 52 52 54 56 59 61 62 61 60 60 62 65 69 71 72 71 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 1 1 0 0 0 0 0 0 0 0 0 0 3 5 6 8 10 11 9 4 1 0 0 3 7 11 14 17 15 8 2 0 1 5 10 14 14 12 7 0 0 0 0 0 2 8 11 12 10 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 9 20 25 30 31 28 25 23 24 26 30 32 33 32 32 32 31 30 29 30 33 35 32 27 21 16 14 14 14 15 16 17 19 18 16 16 16 16 16 17 19 20 22 22 22 23 24 24 25 25 25 23 22 20 18 17 16 16 16 16 15 15 15 16 16 17 17 19 20 22 22 23 23 23 23 23 26 33 40 42 43 43 43 43 44 45 47 50 52 53 52 50 48 46 45 45 45 45 46 47 48 47 46 44 42 42 43 45 48 54 57 56 48 39 36 43 50 54 54 54 55 57 58 56 50 42 34 32 32 33 35 37 38 38 36 33 30 29 29 34 40 46 48 46 39 32 29 30 35 40 44 45 45 45 46 48 47 44 40 36 33 33 34 34 34 32 30 30 33 37 42 45 47 48 48 49 51 53 54 52 50 49 48 46 45 43 41 42 46 50 52 54 54 56 58 58 57 56 57 58 58 57 57 56 56 56 56 55 56 56 56 55 54 54 55 57 59 60 60 60 62 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 6 4 0 0 0 0 0 0 0 0 0 0 0 1 5 10 13 12 9 4 0 0 0 4 7 10 13 13 3 0 0 0 0 6 12 14 11 5 0 0 0 0 0 1 7 12 15 14 10 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 10 23 30 35 32 27 22 20 22 26 29 31 32 32 32 32 30 30 31 34 36 35 29 22 13 4 3 3 2 2 6 14 15 16 16 16 15 15 15 17 19 20 21 21 22 23 25 26 26 26 26 25 24 23 21 20 19 18 17 17 16 16 16 14 13 13 12 13 14 17 19 21 22 22 23 23 27 34 41 42 43 42 42 41 42 44 45 47 49 51 51 49 46 46 46 47 47 46 46 46 45 43 42 40 39 40 41 43 46 51 54 53 47 38 37 45 52 55 54 52 52 54 56 55 52 45 39 36 35 36 36 36 34 32 30 28 26 25 26 29 34 37 38 36 32 29 29 34 41 44 43 39 37 38 43 49 50 46 40 34 29 30 32 32 31 29 26 26 29 33 37 42 44 44 45 46 49 51 51 51 50 50 48 45 42 40 39 41 44 46 48 49 50 52 54 56 54 52 52 53 53 54 55 56 57 57 56 53 52 52 51 51 51 50 51 52 53 54 54 56 59 61 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 5 0 0 0 0 0 0 0 0 0 0 0 1 7 12 14 12 7 0 0 0 0 0 2 6 8 2 0 0 0 0 0 6 8 5 0 0 0 0 0 0 1 4 10 15 16 14 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 4 14 25 32 34 29 22 17 17 21 26 29 30 31 31 31 30 30 31 33 35 36 32 25 18 9 0 0 0 0 0 1 3 3 13 16 16 15 14 15 16 17 19 19 20 22 24 25 25 25 25 25 25 25 24 23 22 21 20 18 17 16 15 15 14 13 12 9 0 0 8 13 15 17 21 22 26 34 40 42 42 42 42 41 40 41 42 43 45 46 48 48 47 45 46 47 47 48 47 45 43 41 39 37 37 38 38 39 40 43 48 51 50 46 42 43 52 57 58 56 53 52 53 55 56 54 49 43 39 38 38 38 37 35 33 30 28 26 25 25 26 27 28 29 30 29 31 35 41 46 45 38 32 30 34 42 48 49 44 36 28 22 23 26 28 28 26 24 24 25 27 31 35 38 39 40 43 46 49 49 48 49 49 49 48 46 46 47 48 48 46 45 45 47 50 54 55 53 51 50 49 49 49 50 52 53 54 53 51 50 49 49 49 49 48 49 50 51 53 56 58 62 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 11 8 0 0 0 0 0 0 0 0 0 0 0 0 1 8 13 13 10 5 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 9 11 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 4 12 21 26 26 22 9 0 6 22 26 28 29 29 29 30 30 30 31 32 34 35 30 22 13 5 0 0 0 0 0 0 0 0 12 17 17 16 15 14 15 16 17 18 20 22 23 24 23 23 22 23 23 24 23 23 22 22 21 20 19 17 16 15 14 14 13 10 0 0 0 0 0 2 16 20 30 37 41 41 41 41 40 40 39 39 40 41 42 42 44 44 45 44 45 46 47 48 46 42 38 35 33 35 36 37 37 36 37 40 44 47 48 47 48 52 58 61 60 57 53 51 52 54 55 53 48 41 37 36 36 37 37 37 35 33 31 28 26 24 23 22 22 23 27 31 36 41 45 47 42 33 26 25 29 38 43 43 37 27 18 14 16 19 22 25 25 26 25 24 25 27 30 32 33 36 40 43 46 46 45 46 47 49 51 54 57 59 59 56 49 45 46 49 54 58 58 56 54 52 50 48 48 48 50 51 51 51 51 51 50 50 49 48 48 48 49 51 54 58 62 65 68 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 11 10 0 0 0 0 0 0 0 0 0 0 0 0 0 2 8 11 12 8 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 1 3 9 19 19 8 1 0 5 22 26 27 27 27 28 30 30 29 29 30 31 32 28 22 10 0 0 0 0 0 0 0 1 8 15 18 19 18 16 15 15 16 18 19 20 20 21 20 20 20 21 21 22 22 21 21 21 22 22 21 21 20 18 17 16 15 14 12 8 2 0 0 0 0 1 13 20 28 37 37 35 34 33 32 32 32 37 39 39 40 40 41 42 43 44 46 47 47 44 40 32 23 25 34 36 36 36 35 37 40 43 45 48 50 53 58 60 61 58 54 50 49 50 52 52 48 41 34 30 30 31 32 33 34 34 33 31 27 23 20 19 18 18 20 26 33 38 43 45 43 36 28 24 23 27 34 37 34 27 17 9 8 9 13 17 22 26 28 28 26 25 26 27 28 31 34 38 41 43 43 42 43 45 48 54 59 64 65 64 60 54 50 52 56 61 63 62 61 59 56 54 52 52 52 53 54 54 55 55 56 56 55 53 52 51 50 50 52 55 59 64 68 71 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 11 11 5 1 0 0 0 0 0 0 0 2 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 2 6 6 2 0 2 8 14 24 26 25 26 28 30 30 28 26 26 28 31 29 23 11 0 0 0 0 0 0 0 1 15 18 20 20 19 18 17 17 18 18 19 19 19 19 18 18 19 20 21 21 21 20 20 19 20 20 21 22 22 20 18 17 16 14 12 11 7 3 0 0 0 0 2 10 18 20 20 18 17 17 18 19 21 30 32 31 32 38 39 40 42 44 46 47 45 42 38 30 24 35 36 37 36 35 36 39 41 43 46 49 52 56 58 59 57 53 49 46 46 48 49 47 40 32 26 23 23 24 25 26 28 28 28 27 24 22 20 18 17 17 18 21 26 32 35 37 35 30 26 24 26 28 32 32 28 20 11 5 4 5 8 12 19 25 28 29 28 26 25 24 24 26 30 34 37 37 38 38 40 42 46 53 59 63 64 63 60 57 57 59 63 66 67 67 67 66 64 61 59 58 58 58 59 60 61 63 64 63 62 60 59 57 56 56 56 59 62 66 69 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 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 12 8 2 0 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 3 9 11 15 21 24 26 28 31 30 27 24 24 26 29 29 25 12 0 0 0 0 0 0 1 5 17 20 20 20 20 19 18 18 18 18 19 19 18 18 18 17 17 18 20 21 21 20 19 18 18 18 19 20 21 20 18 17 16 14 12 10 9 4 0 0 0 0 0 2 3 3 2 1 0 5 12 14 17 19 20 20 23 31 37 39 41 43 45 45 43 39 36 34 33 36 36 36 36 36 38 41 44 46 48 51 54 55 55 54 52 50 48 47 47 48 48 44 36 27 22 19 19 20 19 20 20 21 22 22 22 21 20 19 17 15 14 14 15 16 19 24 26 26 27 28 28 29 30 30 26 20 10 5 2 1 1 4 12 20 23 26 27 25 21 18 17 19 21 24 25 26 28 31 34 38 41 46 50 54 56 57 57 59 63 66 69 70 71 72 73 73 72 70 68 66 64 63 62 64 66 68 69 70 69 67 66 64 63 62 62 63 65 68 70 74 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 3 8 10 11 15 20 26 29 31 30 27 24 20 15 26 27 24 14 0 0 0 0 0 0 3 14 18 20 20 20 20 20 19 19 19 18 18 18 18 18 17 16 16 18 19 20 20 19 18 18 17 17 17 17 18 18 18 17 16 14 12 10 9 6 3 0 0 0 0 0 0 0 0 0 0 0 3 10 13 16 18 19 20 21 34 39 42 43 44 42 40 32 27 26 26 25 24 23 28 37 42 44 47 49 50 51 51 50 50 50 50 51 51 50 50 50 49 45 37 30 25 22 21 20 18 16 16 16 17 19 20 21 21 20 18 15 12 10 9 10 12 17 23 28 30 30 27 26 27 27 25 18 10 4 1 0 0 0 1 8 14 19 21 20 16 12 10 10 10 10 11 13 15 19 23 26 29 33 36 40 44 48 54 60 66 70 72 73 74 76 78 79 79 77 74 71 67 65 64 66 67 68 69 70 70 70 69 68 67 67 67 67 68 70 72 74 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 10 11 11 15 21 29 30 28 26 18 8 10 14 21 22 13 0 0 0 0 0 0 0 0 14 18 19 19 20 19 20 20 19 18 18 19 19 18 17 16 16 17 18 18 19 18 17 17 16 15 15 14 14 15 16 16 16 15 13 11 10 9 7 3 3 1 0 0 0 0 5 2 0 0 0 2 8 12 14 16 18 20 33 39 42 44 43 40 33 25 20 19 19 19 19 20 26 38 43 47 50 51 50 48 46 46 48 51 54 56 55 53 52 51 50 45 39 34 31 30 28 26 23 20 17 16 16 18 19 20 22 23 21 18 14 12 10 11 14 19 26 30 30 25 21 22 24 26 23 15 9 4 1 0 0 0 0 0 4 9 13 13 10 8 6 4 3 2 3 4 5 7 9 11 13 16 20 25 30 38 48 56 64 68 70 72 74 77 79 81 82 81 77 72 67 65 65 66 66 66 66 66 67 67 67 67 68 69 70 70 71 72 73 74 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 9 11 11 12 16 28 28 26 24 14 1 4 4 8 8 5 0 0 0 0 0 0 0 0 1 11 18 19 19 19 19 19 18 18 18 19 19 18 17 16 16 17 17 18 18 17 16 15 14 14 13 13 12 14 16 17 17 16 14 12 10 9 9 8 8 3 0 0 1 4 9 8 6 4 0 0 2 6 11 13 16 18 31 37 39 40 37 34 24 19 17 17 17 17 18 24 32 40 44 48 49 49 46 44 44 48 54 60 63 62 58 54 52 50 48 43 38 36 35 35 34 32 29 26 23 21 19 18 19 20 23 25 25 23 21 19 19 20 22 25 26 24 18 14 14 19 24 25 20 13 9 5 2 0 0 0 0 0 0 2 4 7 8 8 6 4 2 1 1 1 1 2 2 2 4 6 9 14 21 29 39 48 55 60 64 67 71 74 77 80 80 79 75 69 65 63 66 66 65 62 61 60 61 62 62 64 65 68 70 72 72 72 72 74 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 11 11 12 15 26 20 17 14 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 9 18 18 18 17 16 16 18 19 19 19 18 17 16 16 16 17 17 17 17 16 14 13 13 13 12 13 15 17 18 19 18 16 14 12 11 10 9 9 4 2 2 3 9 11 11 11 9 5 1 0 2 6 11 13 16 20 28 34 32 20 19 18 17 17 16 16 17 19 27 38 42 45 46 44 42 42 45 52 62 70 74 73 65 57 52 49 46 43 39 36 35 36 36 36 35 33 31 28 25 22 20 21 22 24 27 28 28 28 29 30 32 32 29 23 16 11 10 14 20 23 23 18 14 12 10 6 3 0 0 0 0 0 0 1 2 7 10 10 9 6 5 4 3 2 1 0 0 1 2 4 8 13 20 27 34 41 48 53 59 64 68 71 73 74 72 68 64 62 62 64 64 62 59 57 57 56 56 57 59 62 65 68 70 71 71 71 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 9 10 11 11 13 20 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 15 5 3 2 6 17 18 18 18 17 16 14 13 12 12 14 17 16 15 10 10 12 12 13 14 15 17 18 18 18 17 15 14 12 12 11 10 9 8 7 7 9 10 11 11 11 10 5 4 5 7 10 12 14 16 18 19 18 17 17 18 19 19 18 16 17 21 31 41 45 44 40 37 38 45 57 68 76 79 77 72 62 52 46 43 40 36 31 31 32 32 33 33 32 32 31 29 27 26 25 25 25 26 26 28 30 32 34 37 38 34 28 19 13 9 10 14 18 19 19 18 19 20 18 14 8 4 3 2 0 0 0 0 0 4 8 11 13 13 10 8 5 3 2 1 1 1 1 3 5 8 12 16 21 28 34 42 49 54 58 62 64 63 61 59 57 58 60 61 59 56 54 54 54 54 54 55 56 58 61 63 65 66 67 68 69 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 8 10 10 9 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 1 0 0 5 15 16 16 17 17 12 0 0 0 0 5 13 13 11 3 7 13 13 14 15 16 17 17 17 17 16 15 14 14 13 12 11 10 6 0 0 7 9 10 10 11 11 10 10 10 11 12 12 13 14 14 14 14 16 19 26 28 21 18 14 16 27 40 45 45 36 30 32 43 57 71 76 75 70 64 58 52 46 41 37 32 28 21 24 26 26 25 24 24 23 23 24 27 28 28 26 24 21 21 22 25 28 30 32 32 29 24 18 14 12 14 15 15 16 17 20 27 31 29 23 15 11 9 6 3 0 0 0 0 1 2 4 8 10 10 7 6 5 4 3 2 2 2 2 4 6 8 10 14 19 26 34 40 45 48 52 53 52 51 50 51 54 55 53 51 49 49 51 53 54 54 54 55 55 56 57 58 60 62 64 66 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 8 8 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 1 5 5 13 16 11 2 0 0 0 0 0 0 0 0 0 7 14 14 16 16 16 16 16 16 15 14 14 14 14 15 14 12 6 1 0 0 0 6 9 10 11 12 12 13 14 14 14 14 13 13 13 14 15 18 28 34 32 20 14 12 16 30 45 47 39 23 22 35 55 71 76 70 60 53 50 50 49 45 39 30 20 18 18 19 18 17 16 16 15 15 16 18 22 26 25 16 7 5 4 3 11 18 19 20 22 22 22 20 19 18 17 15 14 14 17 22 27 30 30 26 22 18 15 12 7 3 1 0 0 0 0 1 2 2 2 2 3 5 6 5 3 2 2 2 3 5 7 9 12 16 22 28 34 38 41 44 44 44 43 44 46 48 47 45 43 43 45 48 52 54 55 55 55 54 54 54 55 57 60 62 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 2 3 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 6 3 0 0 0 0 0 0 0 0 0 0 6 14 15 17 17 16 15 14 14 13 13 13 14 14 15 14 12 5 0 0 0 0 6 10 11 12 13 15 17 18 18 16 16 14 14 14 17 24 28 35 37 31 16 12 13 26 41 46 41 20 17 31 52 69 78 67 50 41 42 47 52 50 45 34 22 19 27 31 30 24 16 15 15 15 14 15 16 17 20 14 6 0 0 0 0 2 2 2 2 12 18 23 25 24 22 18 15 15 17 20 23 23 23 22 22 22 22 19 15 11 8 6 3 2 1 1 0 0 0 0 0 1 2 5 5 5 4 3 3 4 6 8 11 14 17 21 26 30 33 35 37 38 38 39 40 42 42 40 38 38 39 42 45 48 51 53 54 54 54 54 55 56 57 60 62 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 14 15 17 16 14 12 10 10 9 10 12 13 13 13 12 8 3 0 0 0 5 10 12 13 15 27 30 31 31 27 16 16 16 17 20 23 32 36 37 32 22 12 12 23 36 42 37 20 14 26 46 66 76 69 48 29 28 43 53 56 52 44 34 27 31 39 41 37 28 18 19 19 18 17 16 16 15 11 4 0 0 0 0 0 0 0 0 0 1 14 24 26 24 19 17 17 19 22 24 22 20 18 18 19 20 20 19 17 15 14 12 10 8 6 5 3 2 0 0 0 0 0 2 5 6 6 6 5 6 7 8 11 15 18 21 24 26 27 28 29 31 33 35 36 36 35 34 35 36 38 40 42 44 47 49 51 53 55 56 58 60 60 61 62 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 14 16 16 15 7 0 0 0 0 6 9 9 9 8 7 3 0 1 6 7 11 20 27 28 30 33 33 32 27 17 16 16 16 23 32 33 35 36 32 23 13 11 20 33 38 34 20 12 16 37 60 72 70 51 26 21 35 55 62 58 50 41 36 37 44 47 44 37 27 17 19 19 18 16 15 13 11 3 0 0 0 0 0 0 0 0 0 0 9 16 19 17 14 13 16 20 25 26 24 21 19 18 18 18 19 19 18 18 18 18 17 16 15 14 13 11 8 4 1 0 0 0 1 4 7 8 8 8 8 8 9 11 15 18 21 22 22 21 20 21 23 25 26 27 27 28 30 33 36 38 40 40 41 43 45 48 52 56 60 62 63 62 62 62 62 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 4 4 3 1 0 0 0 0 0 0 0 0 0 0 0 0 2 12 19 24 30 35 36 36 36 34 32 26 15 14 14 16 23 33 34 35 32 23 13 11 14 30 36 31 20 10 12 30 52 67 68 54 28 20 35 56 66 66 55 46 40 40 45 50 48 41 30 18 14 16 14 8 3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 4 5 5 3 2 10 17 23 26 25 22 20 20 20 20 20 20 20 19 20 20 20 21 22 22 20 20 19 16 10 4 0 0 0 0 2 6 8 9 9 9 10 10 12 14 17 20 20 20 18 16 16 17 17 17 17 19 22 26 30 34 36 37 38 40 41 44 48 54 58 62 63 64 62 61 61 61 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 12 24 32 35 34 36 37 37 35 29 19 14 14 15 21 30 32 33 32 21 13 10 12 20 30 27 16 7 10 25 47 62 64 53 29 20 33 52 64 66 57 47 42 43 47 53 53 46 33 20 13 14 14 8 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10 16 18 18 16 17 20 22 23 24 23 23 22 22 22 22 23 24 25 24 24 22 23 22 15 7 1 0 0 0 1 4 6 8 9 10 12 13 14 14 16 17 18 17 16 16 15 15 14 14 14 15 17 19 23 26 30 33 36 38 42 46 50 55 59 61 62 61 61 60 59 59 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 1 10 12 21 30 34 37 38 37 35 27 15 14 22 25 28 31 32 31 21 14 11 12 17 30 19 6 1 5 19 43 57 60 50 30 16 26 43 56 59 53 44 42 43 48 54 57 51 39 24 14 15 22 18 9 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 13 9 4 5 10 14 19 23 24 25 25 26 26 26 26 26 27 28 27 26 25 25 27 25 19 11 3 0 0 0 1 2 4 6 8 10 12 14 15 14 14 14 14 15 16 16 16 15 15 15 15 14 14 14 15 18 23 28 32 36 41 46 51 54 57 59 60 59 58 58 58 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 0 0 0 0 0 0 0 0 0 0 3 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 21 33 36 37 35 31 23 15 20 28 31 31 28 21 19 14 11 12 14 17 14 5 0 3 16 40 54 56 47 29 12 13 32 45 48 42 29 27 37 46 51 52 50 42 26 17 18 24 37 28 18 9 5 6 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 7 3 0 1 8 13 17 20 23 25 25 27 28 28 28 28 31 32 31 29 28 29 32 32 27 18 8 1 0 0 0 1 2 3 5 8 11 13 14 13 12 11 12 12 14 15 15 15 15 15 15 14 13 12 13 15 19 24 28 33 38 42 46 50 52 54 55 55 55 55 54 52 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 18 31 35 33 29 20 12 14 24 26 22 18 15 8 6 5 8 12 12 4 3 1 0 9 37 52 52 41 24 8 8 13 27 32 29 22 16 19 34 42 42 39 28 22 19 18 25 42 44 38 25 14 13 13 11 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 11 12 14 15 18 21 24 26 27 27 28 30 32 35 35 34 33 35 38 39 36 28 14 4 1 0 0 0 0 1 2 5 8 11 11 11 10 10 11 12 12 13 13 13 13 14 14 13 13 14 15 17 19 22 24 26 29 33 37 40 43 46 48 49 49 48 46 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 6 18 29 18 6 0 2 10 12 12 6 0 0 0 0 0 3 6 5 0 0 0 9 30 45 45 27 9 0 1 9 15 16 13 8 7 12 17 23 26 23 21 17 17 18 24 38 44 43 37 26 16 16 15 12 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 14 14 13 12 12 13 16 19 22 24 25 27 28 32 35 37 38 38 41 45 47 45 38 22 10 3 0 0 0 0 0 0 2 5 9 9 9 9 10 11 12 12 11 10 10 10 10 11 12 14 16 19 21 21 20 19 18 19 20 24 28 32 36 38 39 39 38 36 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 6 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 19 35 35 20 8 1 0 1 12 14 11 5 0 0 10 11 9 8 6 6 12 16 19 25 37 39 28 22 18 18 20 18 14 7 2 0 0 0 3 5 4 0 0 0 0 0 0 0 0 0 0 3 11 12 14 14 13 12 11 13 15 17 19 22 24 27 30 33 37 40 41 44 48 51 51 45 30 15 5 0 0 0 0 0 0 1 3 6 7 7 7 9 11 12 12 11 9 8 8 8 9 11 14 17 21 22 20 18 16 13 13 14 16 20 24 27 29 29 29 29 28 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 18 21 13 5 1 0 2 10 13 11 5 0 0 0 6 3 0 0 0 0 9 14 17 20 24 22 18 16 17 19 21 20 16 12 7 1 0 2 6 10 8 0 0 0 0 0 0 0 0 0 0 0 0 0 8 13 14 13 13 12 13 14 16 18 21 25 29 32 35 39 41 44 48 52 54 50 36 19 7 1 0 0 0 0 0 0 2 5 6 6 6 7 9 11 11 11 10 9 9 9 9 11 14 17 19 20 18 16 14 13 13 14 16 19 22 23 24 24 25 25 25 25 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 9 6 1 0 0 3 9 12 5 2 1 0 0 0 0 0 0 0 0 0 5 8 9 9 8 7 10 13 15 17 18 17 16 13 11 8 2 6 8 6 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 12 15 15 14 13 13 14 16 18 22 27 31 35 37 40 43 47 51 54 51 39 23 8 0 0 0 0 0 0 0 1 3 4 5 5 5 7 8 10 10 11 12 12 11 12 12 14 16 16 16 15 14 14 15 16 17 19 21 23 24 25 24 24 24 25 25 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 8 12 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 12 13 14 14 15 14 13 11 10 8 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 12 15 15 15 14 14 15 17 20 25 30 35 39 41 43 47 51 53 51 41 25 10 0 0 0 0 0 1 0 0 1 3 4 4 3 4 6 7 9 11 12 12 13 13 14 14 14 14 14 14 14 15 16 17 18 19 20 22 22 23 23 23 23 23 22 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 6 10 12 14 15 14 13 11 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11 15 15 15 15 16 16 19 23 29 35 41 44 46 48 50 52 49 40 26 11 0 0 0 0 0 1 0 0 0 1 2 2 1 2 3 5 7 8 9 10 11 13 14 15 14 13 13 13 14 15 15 14 14 14 14 14 14 13 12 11 12 12 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 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 4 9 13 14 14 13 11 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 13 15 16 16 16 16 18 21 26 34 40 45 47 47 46 45 43 37 25 11 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 3 4 5 5 6 8 11 13 13 12 12 12 12 12 12 10 9 8 8 7 6 5 4 4 3 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 4 9 12 12 12 10 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 14 15 16 16 16 17 20 24 31 38 43 45 44 42 40 38 34 25 12 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 3 6 8 10 10 10 10 10 10 10 9 7 6 5 3 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 2 7 7 9 7 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 14 15 16 16 17 19 22 29 35 40 42 42 40 38 36 33 25 12 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 7 8 8 7 8 8 8 8 7 6 4 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 3 13 14 15 16 16 18 20 26 33 38 41 41 40 38 36 33 27 14 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 6 6 5 5 5 5 6 6 6 6 4 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 12 14 14 15 16 17 19 24 31 36 40 41 40 38 36 34 28 16 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 6 4 2 2 2 3 4 4 4 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 1 10 12 13 14 14 16 18 23 29 34 39 40 39 38 36 35 30 18 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 1 2 2 2 2 1 0 0 0 0 0 0 2 2 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 6 7 9 12 13 14 17 22 27 33 37 39 39 38 37 36 32 20 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 1 2 2 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 8 11 13 16 20 25 31 36 39 39 39 38 36 32 22 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 2 8 11 14 18 23 30 35 38 40 40 39 37 33 24 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 11 15 20 27 33 37 40 41 40 38 34 27 13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 11 16 23 30 35 39 40 40 38 35 29 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 18 25 32 36 39 39 37 35 31 23 10 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 1 10 18 26 32 36 36 36 34 31 26 17 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 1 8 17 26 31 32 32 32 30 27 20 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 1 6 15 24 27 28 28 27 25 20 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 12 18 22 23 23 21 17 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 8 15 16 14 11 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 1 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 5 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 32 32 33 33 33 33 33 33 33 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 30 31 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 28 28 28 28 28 28 28 28 28 28 28 28 29 29 28 28 28 28 28 28 28 28 28 28 28 28 28 28 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 30 30 30 30 29 29 29 29 29 29 29 29 30 30 30 30 30 30 30 30 30 30 30 30 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 28 27 27 27 26 26 26 26 26 26 26 26 26 26 25 25 25 25 24 24 24 24 24 23 23 23 23 23 23 23 23 23 23 23 23 23 23 24 24 24 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 23 23 23 22 22 22 22 23 24 25 25 25 24 24 24 25 25 25 nan nan 24 24 24 24 24 24 24 24 24 24 24 24 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 25 24 24 24 24 24 23 23 23 23 22 22 22 22 22 22 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 31 32 32 33 33 33 33 33 33 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 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 nan nan nan nan nan nan nan nan nan nan nan 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 28 28 28 29 29 29 29 29 29 29 29 29 29 29 29 29 29 30 30 30 30 30 30 30 30 30 29 29 29 29 30 30 29 29 29 30 29 30 30 30 30 30 29 29 29 29 29 29 28 28 28 28 28 28 28 28 28 28 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 25 25 25 25 24 24 24 23 23 23 23 22 22 23 23 23 23 23 23 23 23 23 24 24 24 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 23 23 23 22 22 21 21 22 23 24 24 25 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 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 25 25 24 24 24 23 23 23 22 22 22 22 22 22 22 21 21 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 32 32 32 32 32 33 33 33 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 28 28 28 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 30 30 29 29 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 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 25 24 24 24 23 23 23 23 23 23 23 24 24 23 23 23 23 23 24 24 24 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 23 23 22 22 21 21 21 21 23 24 24 24 24 nan 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 25 24 24 24 24 23 23 23 22 22 22 22 22 21 21 21 21 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 32 32 33 33 33 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 28 28 29 29 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 29 29 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 30 30 29 29 29 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 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 24 24 24 23 23 23 23 23 24 24 24 24 23 23 23 23 24 24 24 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 23 23 23 22 21 21 21 21 22 23 24 24 nan nan nan 24 24 24 23 23 23 23 23 23 23 23 23 23 24 24 24 24 24 24 24 24 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 23 23 23 23 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 32 33 33 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 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 nan nan nan nan nan nan nan nan nan nan nan 28 28 29 29 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 29 29 29 29 29 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 30 30 30 30 29 29 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 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 24 24 24 23 23 24 24 24 24 24 24 24 23 24 24 24 24 24 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 24 23 23 23 22 22 22 21 21 21 22 23 24 24 nan 24 23 23 23 23 23 23 23 23 23 22 23 23 23 23 23 23 24 24 24 24 24 24 24 24 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 23 23 23 22 22 22 22 21 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 28 29 29 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 29 29 29 29 29 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 30 30 30 30 30 30 29 29 29 29 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 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 23 23 23 22 22 22 22 22 22 23 23 24 24 23 23 23 23 23 23 22 22 22 22 22 22 22 22 23 23 23 23 23 23 24 24 24 24 24 24 24 24 24 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 23 23 23 22 22 22 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 32 32 nan nan nan nan nan nan 30 30 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 nan nan nan nan nan 29 29 29 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 29 29 29 29 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 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 29 29 29 28 28 28 28 28 28 28 28 28 28 27 27 27 27 27 26 26 26 26 26 26 26 26 26 27 27 27 27 26 26 26 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 23 23 23 23 22 22 22 22 22 23 23 23 23 23 23 23 22 22 22 22 22 22 22 22 22 22 22 22 22 23 23 23 23 23 23 23 23 24 24 24 24 24 24 24 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 25 24 24 24 24 24 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 31 32 32 nan nan nan nan nan 30 30 30 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 nan nan nan nan nan nan 29 29 28 28 28 28 28 29 29 29 29 29 29 28 28 28 28 29 29 29 29 29 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 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 29 29 28 28 28 28 28 28 28 28 28 28 28 27 27 27 27 27 26 26 26 26 26 26 26 27 27 27 27 27 27 26 26 26 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 23 23 23 23 23 22 22 22 22 22 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 23 23 23 23 23 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 25 25 25 24 24 24 24 24 24 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 31 31 32 32 nan nan nan nan 30 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 29 28 28 28 28 29 29 29 29 29 29 29 29 29 29 29 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 30 30 30 30 30 30 30 30 30 30 30 30 nan nan 30 30 30 30 29 29 29 29 29 29 29 29 29 29 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 26 26 26 27 27 27 27 27 27 27 26 26 26 26 26 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 23 23 23 23 23 23 22 22 22 22 22 23 23 22 22 22 22 22 22 22 22 22 22 22 22 21 21 21 21 22 22 22 22 22 22 22 22 22 23 23 23 23 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 25 25 25 25 25 24 25 24 24 24 24 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 31 31 32 32 nan nan nan nan nan 30 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 29 29 28 28 28 29 29 29 29 29 29 29 29 29 29 29 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 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 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 27 27 27 27 27 27 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 24 24 24 24 24 24 24 24 24 23 23 23 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 21 21 21 21 21 21 21 22 22 22 22 22 22 22 22 22 23 23 23 23 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 25 25 25 25 25 25 25 24 24 24 24 24 23 23 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 32 32 nan nan nan nan nan nan nan 31 31 31 32 nan nan nan nan nan 30 30 31 31 nan nan nan nan nan nan nan nan 30 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 29 29 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 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 29 29 29 30 29 30 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 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 27 27 27 26 26 26 26 26 26 26 26 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 23 23 23 23 24 24 24 24 23 23 23 22 22 22 22 22 22 22 22 22 22 22 22 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 22 22 22 22 23 23 23 23 23 23 23 23 23 23 23 23 24 24 24 24 24 24 24 24 25 25 25 25 25 25 25 25 24 24 24 24 24 23 23 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 31 32 32 nan nan nan nan nan nan nan 31 31 31 nan nan nan nan nan nan 30 30 31 nan nan nan nan nan nan nan nan 29 30 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 29 28 29 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 29 29 29 nan nan nan nan nan nan 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 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 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 26 26 26 26 26 26 26 26 26 26 26 25 25 26 26 26 26 26 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 23 23 24 24 24 23 23 23 23 23 22 22 22 22 22 22 22 22 22 22 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 22 22 22 22 23 23 23 23 23 23 23 23 23 23 23 24 24 24 24 24 24 24 24 24 25 25 25 25 25 25 25 24 24 24 24 24 24 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 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 nan 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 28 28 28 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 29 29 29 nan nan nan nan nan nan nan nan nan 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 29 29 29 29 29 29 29 29 nan nan nan nan 29 29 29 29 29 29 29 29 29 29 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 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 24 24 24 24 24 24 24 23 23 23 23 23 23 23 23 23 22 22 22 22 22 22 22 22 22 22 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 22 22 22 22 23 23 23 23 23 23 23 23 23 23 23 24 24 24 24 24 24 24 24 24 24 25 25 24 24 24 24 25 24 24 24 24 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 33 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan 29 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 28 28 28 28 29 nan nan nan 29 29 29 29 29 29 29 28 28 28 28 28 28 29 29 29 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 29 29 29 29 29 29 29 29 29 29 29 29 29 nan nan nan nan nan nan nan 29 29 29 29 29 29 29 29 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 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 24 24 24 24 24 24 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 22 22 21 21 21 21 21 21 21 21 21 21 21 21 21 21 22 22 22 22 23 23 23 23 23 23 23 23 23 23 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 33 nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 28 nan nan nan nan 28 29 29 29 29 29 29 28 28 28 28 29 29 29 29 nan nan nan nan nan nan nan nan nan nan 30 30 30 30 30 30 30 29 29 29 29 29 29 29 29 28 28 28 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 nan nan nan nan nan nan nan 29 29 29 29 29 29 29 29 29 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 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 24 24 24 24 24 23 23 23 23 23 23 23 23 23 23 23 22 22 22 22 nan nan nan 22 21 21 21 21 21 22 22 22 22 22 22 22 22 21 21 21 21 21 21 21 21 21 21 21 21 21 22 22 22 22 23 23 23 23 23 23 23 23 23 23 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan 28 29 28 28 28 29 29 29 29 29 29 29 29 29 29 29 nan nan nan nan nan nan nan nan 30 29 29 29 29 29 30 29 29 29 29 29 29 29 29 28 28 28 28 28 28 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 nan nan nan nan nan nan nan nan 29 29 29 29 29 29 29 29 29 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 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 24 24 24 24 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 nan nan nan nan 22 21 21 21 22 22 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 23 23 23 23 23 23 23 23 23 23 23 23 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 28 28 28 28 28 29 29 29 29 29 29 29 29 29 30 30 nan nan nan nan nan nan nan nan 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 29 29 29 29 29 29 29 29 29 29 29 29 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 29 29 29 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 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 24 24 24 24 24 24 23 24 24 23 23 23 23 23 23 23 23 nan nan nan nan nan 21 21 21 22 22 22 22 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 23 23 23 23 23 23 23 23 23 23 23 23 23 24 24 24 24 23 23 23 23 24 24 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 28 28 28 28 28 29 29 29 29 29 29 29 30 30 30 30 nan nan nan nan nan nan nan 30 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 28 29 29 29 29 29 29 29 29 29 29 29 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 29 29 29 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 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 24 nan nan 24 24 24 24 24 23 23 23 23 23 23 23 nan nan nan nan nan nan nan nan 22 22 22 22 22 22 22 nan nan 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 23 23 23 23 23 23 23 23 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 28 28 28 28 29 29 29 29 30 nan 30 30 30 30 30 nan nan nan nan nan nan nan nan 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 29 29 29 29 29 29 29 29 29 29 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 29 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 27 27 27 27 27 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 24 24 24 24 24 23 23 23 23 23 23 23 23 nan nan nan nan nan nan nan nan nan nan 22 22 22 nan nan nan nan nan nan nan nan nan nan 22 22 22 22 22 21 21 21 21 21 21 21 21 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 23 23 23 23 23 22 22 22 22 22 22 22 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 28 28 28 29 29 29 29 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 30 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 28 28 28 29 29 29 29 29 29 29 29 29 29 29 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 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 27 27 27 27 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 24 24 24 24 24 24 24 24 24 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 22 22 22 21 21 21 21 21 21 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 21 21 21 21 20 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 29 30 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 29 28 28 28 28 28 28 28 28 28 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 nan nan nan nan nan nan nan nan 28 29 29 nan nan 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 28 28 28 28 28 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 25 25 25 25 25 25 24 24 24 24 nan 24 24 24 24 24 24 24 nan nan nan nan nan nan nan nan nan nan nan nan nan 22 nan nan nan nan nan nan nan nan nan nan nan nan nan 22 22 22 22 22 22 21 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 21 21 21 20 20 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 29 29 29 29 29 28 28 28 28 28 28 28 28 29 nan 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 nan nan nan nan nan 28 29 29 29 29 nan nan nan nan 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 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 24 nan 24 24 24 24 24 24 24 24 24 24 nan nan nan nan nan nan nan nan nan nan nan 22 22 22 22 nan nan nan nan nan nan nan nan nan nan nan 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 21 21 21 20 20 20 19 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 29 29 29 29 29 29 nan nan nan nan nan 28 28 29 nan nan 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 nan nan nan nan nan nan nan 29 29 29 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 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 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 nan nan nan nan nan nan nan nan nan nan nan 23 nan nan nan nan nan nan nan nan nan nan nan nan nan 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 21 21 21 21 20 20 19 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 29 29 29 nan nan nan nan nan nan nan nan nan nan nan 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 nan nan nan nan nan nan nan 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 29 28 29 28 29 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 26 nan nan nan nan 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 21 21 21 20 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 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 nan nan nan nan nan nan nan 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 29 29 29 29 29 28 28 28 28 28 28 28 28 27 27 27 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 nan nan nan nan nan nan nan nan nan 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 21 21 21 20 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 29 nan nan 29 29 29 29 29 29 nan nan nan nan nan nan nan 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 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 26 26 26 26 26 26 26 26 nan nan nan nan nan nan nan nan nan nan nan 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 21 21 21 20 20 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 29 29 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 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 26 26 26 26 26 26 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 24 24 24 24 24 24 24 24 24 24 24 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 21 21 21 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 28 28 29 28 28 28 28 28 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 nan nan nan nan nan nan nan 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 24 nan nan nan nan nan nan nan nan nan nan nan nan 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 21 21 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 29 29 29 29 29 29 29 29 29 29 29 29 29 nan 29 29 29 29 28 29 28 29 28 28 28 28 28 28 28 28 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 nan nan nan nan nan 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 24 nan nan nan nan nan nan nan nan nan nan 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 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 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 nan nan nan 29 29 28 28 28 29 29 28 28 28 28 28 28 28 28 28 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 nan nan nan nan nan 25 nan nan nan 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 nan nan nan 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 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 21 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 29 29 29 29 29 29 nan nan nan 29 29 28 29 29 29 29 29 28 28 28 28 28 28 28 28 28 28 28 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 nan nan nan nan nan nan nan nan nan 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 nan nan nan nan 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 22 22 22 23 22 22 22 22 22 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 30 30 30 30 30 30 30 30 30 30 30 nan nan nan nan 29 29 nan nan nan nan nan 29 29 29 29 29 nan nan 29 28 28 28 28 28 28 28 28 28 28 28 28 28 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 nan nan nan nan 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 24 nan nan nan nan 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 22 22 22 22 23 23 23 23 22 22 22 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 30 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan 29 29 29 29 nan nan nan nan 29 29 28 nan nan 28 28 28 28 28 28 28 28 28 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 nan nan nan 25 25 25 25 25 25 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 nan nan nan nan nan nan nan nan 23 23 23 23 23 nan nan 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 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 29 29 29 29 nan nan nan nan 29 29 29 nan nan nan nan 28 nan nan nan nan 28 28 28 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 nan nan 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 23 23 23 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 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 29 29 29 nan nan nan nan 29 29 29 nan nan nan nan nan nan nan nan nan nan nan 28 28 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 nan nan nan nan 26 26 26 25 25 25 25 25 25 25 25 25 25 25 25 25 25 24 25 25 24 24 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 23 23 23 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 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 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 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 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 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 nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan 26 26 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 23 23 23 23 23 23 23 23 23 23 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 27 27 27 27 27 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 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 nan 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 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 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 nan nan 23 23 23 nan nan 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 26 26 26 26 26 26 26 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 nan nan nan nan nan nan nan nan 26 26 26 26 26 26 26 26 26 26 26 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 26 26 26 26 26 26 26 26 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 26 26 26 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 nan nan nan nan nan nan nan 26 26 26 26 26 26 26 26 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 nan nan nan nan nan nan nan 26 26 26 26 26 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 26 26 26 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 26 26 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 26 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 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 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 20 23 25 26 26 25 26 27 27 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 15 15 16 17 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 13 13 13 13 13 13 13 13 12 12 12 12 13 13 12 12 11 11 11 11 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 13 13 13 13 14 14 14 15 15 15 16 15 15 15 15 15 15 16 16 17 17 17 17 18 18 18 19 19 19 19 19 19 19 18 18 18 17 17 17 16 16 16 16 16 16 15 15 14 13 13 12 11 11 11 11 11 11 10 10 10 9 8 6 5 5 4 4 3 2 1 1 0 360 360 359 360 0 1 2 2 3 3 4 6 8 9 10 11 13 13 15 16 16 17 17 17 17 16 15 14 13 12 11 10 9 7 6 4 2 359 358 1 7 13 17 17 15 13 12 13 14 14 14 nan nan 13 13 13 13 13 13 13 12 12 12 13 14 15 17 18 19 20 21 21 22 22 22 22 22 23 23 23 24 25 26 28 29 29 28 27 26 26 27 29 30 31 30 28 23 18 15 12 11 11 11 11 11 11 10 8 5 2 1 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 23 24 25 25 26 28 28 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 15 16 16 17 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 13 13 13 13 13 13 12 12 12 12 12 12 13 12 11 11 11 11 11 12 12 12 12 12 11 12 12 12 13 13 13 13 13 13 13 13 13 14 14 14 15 15 15 16 16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17 18 18 18 19 19 19 19 18 18 18 18 17 17 16 16 16 15 16 16 16 15 15 14 14 13 12 12 11 11 11 11 11 11 11 11 10 9 8 7 6 5 5 4 3 2 2 1 0 359 359 359 0 2 3 3 3 3 3 4 5 7 9 10 11 12 13 14 15 15 16 16 15 15 14 14 13 11 11 9 9 7 6 5 2 359 357 356 360 5 12 14 14 13 12 11 12 13 13 12 12 11 11 11 11 11 11 11 11 11 11 12 13 14 15 16 17 19 19 20 21 22 23 23 24 24 24 23 23 23 23 25 27 29 29 28 28 27 27 29 30 31 31 29 26 21 17 13 11 9 9 9 8 8 7 5 3 0 359 358 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 23 24 26 28 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 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 14 14 14 14 14 14 13 13 12 11 11 12 12 12 12 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 14 14 15 15 15 15 16 16 16 17 17 17 17 17 17 17 16 16 16 17 17 17 17 17 17 17 18 18 18 19 18 18 18 18 17 17 16 16 15 15 15 15 15 15 15 15 15 14 13 13 12 12 11 11 11 11 11 11 11 11 10 10 9 8 7 6 5 5 4 3 2 1 360 359 360 1 3 4 4 3 3 3 3 4 6 8 9 11 11 12 12 13 13 14 14 14 14 13 13 12 11 10 9 9 8 7 5 3 360 356 354 354 357 4 10 13 13 12 nan 11 11 11 10 9 9 9 9 9 9 9 9 9 9 10 11 12 13 14 15 16 17 18 19 19 21 22 23 24 25 25 25 24 23 23 23 24 25 26 27 27 26 26 27 28 29 30 30 28 25 21 17 14 12 10 9 8 7 6 5 3 0 358 357 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 28 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 13 13 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 14 14 14 14 14 13 12 12 11 11 11 12 12 12 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 14 15 15 15 16 16 16 16 17 17 17 17 17 17 17 17 17 17 16 16 16 16 16 16 16 16 17 17 18 18 18 18 18 17 17 17 16 16 15 15 14 14 14 15 15 15 15 14 14 13 12 12 11 11 11 11 11 11 11 11 11 11 10 9 9 8 7 6 6 5 4 3 1 0 1 2 4 5 5 5 4 3 3 4 5 7 8 10 11 11 11 11 12 12 13 13 12 12 12 11 11 11 10 9 8 7 5 3 0 358 355 353 354 358 5 10 13 nan nan nan 9 8 7 6 6 6 6 6 5 5 6 7 7 8 9 10 11 12 14 15 16 17 17 18 19 20 21 22 23 24 25 25 24 24 23 22 22 22 22 23 23 23 24 25 27 29 29 29 28 25 22 19 16 14 12 11 9 8 7 5 3 1 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 23 25 27 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 14 14 14 14 14 13 12 12 11 12 12 12 12 12 11 11 11 12 12 12 13 13 12 12 12 12 12 12 13 13 13 13 13 13 13 14 14 14 15 15 16 16 16 16 17 17 17 17 17 17 17 17 17 17 16 16 16 16 15 15 16 16 16 16 17 17 18 18 18 18 17 17 17 17 16 16 15 15 14 14 14 14 15 15 14 14 13 13 12 11 11 10 10 10 10 10 11 11 11 11 11 10 10 9 9 8 7 6 4 3 2 3 3 5 6 6 6 5 5 4 5 6 7 8 9 10 11 11 10 11 11 12 11 11 11 10 11 11 11 11 10 9 7 5 3 1 359 358 356 355 357 2 7 11 12 nan 9 7 6 5 4 3 3 3 3 3 3 3 4 5 6 7 8 9 10 12 13 14 15 16 17 17 18 19 20 21 22 23 24 24 24 23 22 21 21 20 19 19 19 20 21 22 25 28 29 29 28 27 25 23 21 19 17 15 13 10 9 7 5 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 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 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 14 14 14 14 14 14 13 13 13 12 12 12 12 12 12 12 12 11 12 12 12 13 13 13 13 13 13 13 13 13 13 13 13 13 14 14 14 14 14 15 15 16 16 17 17 17 17 17 17 17 17 17 17 17 17 17 16 16 16 15 15 15 15 16 16 16 16 17 17 17 18 18 17 17 17 17 17 16 16 15 15 14 14 14 14 15 15 14 14 13 12 12 11 11 10 9 10 10 10 11 11 11 11 11 11 11 11 10 9 8 6 5 5 5 5 7 7 8 7 6 6 5 6 6 7 8 9 10 10 10 10 10 10 11 10 10 9 9 10 10 11 11 11 9 7 5 4 2 1 360 359 358 359 2 5 8 9 8 7 5 4 3 2 1 1 1 1 1 1 1 1 2 3 4 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 22 23 23 22 22 21 20 19 18 18 17 17 18 21 24 27 29 30 30 30 30 29 28 25 21 18 15 12 10 9 6 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 14 14 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 nan nan nan nan nan 14 14 14 14 14 14 13 13 13 13 13 13 13 13 12 12 12 12 12 12 13 13 13 14 14 13 13 14 14 13 13 14 14 14 14 14 14 14 15 15 16 16 16 17 17 17 17 17 17 17 17 16 16 16 16 16 16 16 16 16 15 15 16 16 16 16 16 17 17 17 17 17 17 17 17 18 18 17 17 16 16 15 14 14 14 15 15 14 14 14 13 12 12 11 10 10 9 10 10 10 11 11 12 12 12 12 12 12 11 10 9 8 7 7 8 8 9 9 8 7 7 7 6 7 7 8 8 9 9 10 10 10 10 10 9 9 8 8 9 10 11 11 11 9 7 5 4 3 3 2 1 0 1 2 3 5 5 5 4 3 2 1 0 0 360 360 360 359 359 359 359 360 1 2 3 4 5 5 6 7 8 9 10 12 13 14 15 16 18 18 19 19 20 21 21 21 21 21 20 20 19 18 18 18 20 22 25 28 30 32 34 35 35 34 32 27 22 18 14 12 10 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 19 20 21 nan nan nan nan nan 14 15 16 nan nan nan nan nan 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 14 14 14 14 14 14 14 14 14 14 13 13 13 12 12 12 12 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 15 14 15 15 15 16 16 16 16 17 17 17 17 17 17 17 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 17 17 17 18 18 18 18 18 18 18 18 17 16 16 15 15 15 15 15 15 15 14 14 13 13 12 11 11 10 10 10 10 11 11 12 12 13 13 14 14 13 12 11 10 9 9 10 10 10 10 9 8 7 7 7 7 8 8 8 9 9 9 9 9 9 9 9 8 8 7 8 9 10 10 9 8 6 5 5 4 4 3 2 1 1 1 2 3 3 3 2 1 0 0 359 359 359 358 358 358 358 358 357 358 358 359 0 1 2 2 3 3 4 5 6 8 9 10 12 13 15 16 16 17 17 17 18 19 20 20 20 21 21 21 20 21 22 23 25 28 31 34 36 38 39 39 36 31 25 20 15 11 8 7 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 21 21 nan nan nan nan 14 16 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 15 15 14 14 14 14 14 14 14 14 14 13 13 13 13 13 13 13 13 13 13 13 14 14 14 14 15 15 15 15 15 15 15 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 16 16 15 16 16 16 nan nan 16 16 16 16 16 16 16 16 16 17 17 18 18 18 19 19 19 19 19 19 18 18 17 16 16 15 15 16 16 15 15 15 14 14 13 12 12 11 11 11 11 11 11 12 12 13 14 14 15 14 13 12 11 11 11 11 11 11 10 10 9 8 8 8 8 9 9 9 9 9 9 9 9 9 9 8 8 7 7 7 8 8 8 8 7 6 6 6 6 5 4 3 1 0 0 1 2 2 2 1 360 359 358 358 358 358 358 357 357 357 357 356 356 356 357 358 359 360 0 0 0 0 1 2 4 5 7 8 10 11 12 13 13 14 14 14 15 16 18 19 20 21 22 23 23 24 26 28 30 32 34 36 38 39 40 39 35 29 23 17 11 8 6 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan 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 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 13 13 13 13 13 13 13 13 13 13 13 13 14 14 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 16 16 16 16 15 15 15 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 17 17 18 18 19 19 19 19 19 19 19 19 18 18 17 16 16 16 16 16 16 15 15 15 14 14 13 13 12 12 12 12 12 12 12 13 14 14 15 15 14 13 13 12 12 12 12 12 11 10 10 9 8 9 9 10 10 10 10 10 10 9 9 9 9 8 8 8 7 7 7 7 6 6 6 6 7 7 7 6 5 3 1 0 0 0 1 2 1 0 359 358 358 357 357 357 357 356 356 356 356 355 355 354 355 356 357 357 358 358 358 358 358 359 0 2 3 5 7 8 10 10 11 11 11 11 12 13 14 16 18 20 22 23 24 26 27 29 31 33 34 36 37 39 40 40 38 34 29 23 16 11 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 22 23 nan nan nan nan nan nan nan 18 18 19 20 nan nan nan nan nan 15 16 18 19 nan nan nan nan nan nan nan nan 17 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 15 14 14 14 14 14 14 14 14 14 14 13 13 13 13 13 13 13 13 13 13 13 13 14 15 15 15 16 15 15 15 15 15 15 15 15 15 15 15 15 15 14 15 15 14 15 15 15 15 15 15 15 15 15 14 14 15 15 15 15 15 15 15 15 15 15 16 16 16 17 17 18 19 19 19 19 20 20 20 20 19 19 18 18 17 17 16 16 16 16 16 16 15 15 14 14 14 13 13 13 12 12 13 13 14 14 14 14 14 13 13 13 13 13 13 12 12 11 11 10 10 10 11 11 11 11 11 11 10 10 10 10 9 9 9 9 8 8 7 6 6 5 6 6 7 7 6 6 4 3 1 1 0 1 1 1 0 359 358 358 356 356 356 356 356 355 355 355 355 354 354 354 354 354 355 355 356 357 357 357 357 357 358 359 1 3 5 6 7 8 9 9 10 10 11 11 12 14 15 17 19 21 23 25 27 29 30 32 33 35 36 37 39 40 40 39 36 30 23 17 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 20 21 23 nan nan nan nan nan nan nan 18 19 20 nan nan nan nan nan nan 15 17 18 nan nan nan nan nan nan nan nan 14 16 18 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 14 14 14 14 14 14 14 14 14 14 13 13 13 13 13 13 13 12 12 12 13 14 14 nan nan nan nan nan nan 16 16 16 16 15 15 15 15 14 14 14 14 14 14 14 14 13 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14 15 15 15 15 15 16 16 16 17 17 18 19 19 19 19 20 20 20 20 20 19 19 18 18 17 17 16 17 17 16 16 16 15 15 14 14 14 14 13 13 13 14 14 14 14 14 14 13 13 14 14 14 13 13 13 12 11 11 11 11 12 12 12 12 12 12 11 11 11 11 10 10 10 10 9 8 7 6 6 5 6 6 6 6 5 4 3 2 2 1 1 0 1 0 0 359 359 357 356 355 355 355 355 355 355 355 354 354 354 354 353 353 354 354 355 355 355 355 356 356 356 358 359 1 2 4 5 6 7 8 8 9 9 10 11 12 13 14 16 18 20 22 24 26 28 30 31 32 34 35 37 39 40 40 39 36 30 23 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 19 21 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 14 16 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 13 13 13 14 15 15 14 14 14 13 13 13 13 13 13 13 13 12 12 12 12 13 13 14 nan nan nan nan nan nan nan nan nan 16 16 15 15 15 14 14 14 14 14 14 13 13 13 13 12 12 13 13 13 13 13 13 14 14 14 14 13 14 14 14 15 15 nan nan nan nan 16 16 16 17 18 18 19 19 19 19 20 20 20 20 20 19 18 18 17 17 17 17 17 17 16 16 16 15 15 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 13 13 13 12 12 12 12 12 13 13 13 12 12 12 11 11 11 11 11 11 10 10 9 8 7 6 6 6 5 5 5 4 4 3 3 3 2 2 0 0 360 360 359 359 358 356 355 354 354 354 355 355 354 354 354 354 354 354 354 354 354 354 354 355 355 354 355 355 356 357 358 0 2 3 5 5 6 7 8 8 9 10 11 12 13 14 16 17 19 20 22 24 26 28 29 30 32 33 35 36 37 37 36 32 26 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 21 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 13 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 13 14 15 nan nan nan 13 13 13 13 13 13 13 13 13 12 12 12 13 13 14 14 nan nan nan nan nan nan nan nan nan 15 15 15 15 14 14 14 14 14 13 13 13 12 12 11 11 11 12 12 12 12 13 13 13 13 13 13 13 13 14 14 14 15 nan nan nan nan nan nan nan 16 17 17 18 18 18 19 19 19 20 20 20 20 19 19 18 18 18 18 18 18 17 17 16 16 16 15 15 15 15 14 14 14 14 14 14 14 15 15 15 15 14 14 14 14 13 13 13 12 12 12 13 13 13 13 13 12 11 11 11 11 11 11 11 10 9 9 8 7 6 5 4 4 3 3 3 4 4 4 3 2 1 360 359 359 359 359 358 357 355 354 354 354 354 354 354 354 355 355 355 355 354 354 354 354 354 354 354 354 354 354 354 355 356 357 359 0 2 3 4 6 7 8 8 9 10 11 12 13 14 15 16 17 19 20 22 24 25 26 28 29 30 31 31 32 31 30 26 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 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 13 14 nan nan nan nan 13 13 13 13 13 13 13 13 13 13 13 13 13 14 15 nan nan nan nan nan nan nan nan nan nan 15 15 14 14 14 14 14 14 13 13 12 12 12 11 11 10 10 11 11 11 12 12 12 13 13 13 13 13 13 14 14 14 14 14 nan nan nan nan nan nan nan 16 16 16 17 17 17 18 18 19 19 20 20 20 20 19 19 18 18 18 18 18 17 17 16 16 16 16 16 15 15 15 15 16 16 15 16 16 15 15 15 15 15 14 14 14 13 13 13 13 13 13 13 13 13 13 13 12 11 11 11 11 10 11 10 10 9 8 8 6 5 4 3 3 3 4 4 5 5 4 3 1 0 0 360 360 nan nan nan 356 354 354 354 354 354 354 354 355 355 355 355 355 355 354 354 354 354 354 353 353 353 353 353 354 355 356 357 359 1 2 4 5 6 7 8 9 10 11 12 12 13 14 14 15 17 18 20 21 23 24 24 25 26 26 26 26 26 25 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 20 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 13 13 13 13 13 13 13 13 13 13 14 14 14 15 15 15 nan nan nan nan nan nan nan nan 15 15 14 14 14 14 14 14 13 13 13 12 12 11 11 10 10 10 10 10 11 11 11 12 12 13 13 13 13 13 13 14 14 14 14 14 nan nan nan nan nan nan nan nan 15 16 16 17 17 17 18 18 19 19 20 20 19 19 19 18 18 18 18 17 17 17 17 17 17 16 16 16 16 16 17 17 17 17 17 16 16 15 15 15 15 15 14 14 13 13 13 13 13 13 14 13 13 13 12 12 11 11 10 10 10 10 10 9 9 8 7 5 4 3 3 3 4 5 5 5 4 3 2 1 1 1 0 nan nan nan nan 354 353 353 354 354 355 355 354 355 355 355 355 355 355 355 355 354 354 353 353 353 353 353 353 354 354 355 356 358 360 1 3 4 5 6 7 8 9 10 11 11 11 12 12 14 15 16 18 19 20 20 21 21 21 21 22 22 22 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 13 13 13 13 13 13 14 14 14 15 15 15 15 15 16 16 nan nan nan nan nan nan nan nan 15 14 14 14 14 14 14 13 13 12 12 12 12 11 11 10 10 10 10 10 10 11 11 11 12 12 12 13 13 13 13 14 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 18 18 19 19 19 19 19 18 18 18 18 18 17 17 17 17 17 17 17 17 17 17 17 18 18 18 18 17 17 16 16 16 16 16 15 15 14 13 13 13 13 13 14 14 14 13 13 13 12 11 11 10 10 10 10 10 10 9 9 8 7 6 5 5 5 5 5 5 5 4 3 3 2 2 1 1 nan nan nan nan nan 354 354 354 354 355 355 355 355 355 355 355 355 355 355 355 355 354 354 353 353 353 353 353 353 354 354 355 356 357 359 0 1 3 4 5 6 7 8 8 9 9 9 9 10 11 12 13 15 16 16 16 16 15 15 16 16 17 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 13 13 13 13 14 15 15 15 15 15 15 16 16 16 nan nan nan nan nan nan nan 15 14 14 14 13 13 13 13 13 13 12 12 12 11 11 11 10 10 10 10 10 10 10 10 10 11 11 12 12 13 13 13 13 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 18 18 18 18 19 19 18 18 18 18 18 17 17 17 18 17 17 17 18 18 18 18 18 18 19 18 18 18 17 17 17 16 16 15 14 14 13 13 13 13 13 14 14 14 14 13 13 13 12 11 11 10 10 10 10 10 10 10 9 8 nan nan 7 6 6 5 5 4 4 4 3 3 2 2 nan nan nan nan nan nan nan nan 355 355 355 356 356 356 355 nan nan 356 356 356 356 355 355 354 354 354 354 354 354 354 353 354 354 355 356 357 358 359 0 1 2 4 5 5 6 6 7 7 7 7 7 8 9 9 10 10 10 10 9 9 9 9 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 13 13 14 14 15 16 16 nan 16 16 16 17 17 nan nan nan nan nan nan nan nan 14 14 14 13 13 13 13 13 12 12 12 11 11 11 11 10 10 10 10 10 10 10 10 10 10 11 11 12 12 13 13 14 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 18 18 18 18 18 18 17 17 17 17 17 17 18 18 17 18 18 18 18 18 19 19 19 19 19 19 18 17 16 15 14 13 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 11 10 10 10 10 10 10 10 10 10 9 9 8 7 6 5 4 4 4 4 4 4 3 3 nan nan nan nan nan nan nan nan nan nan 356 356 356 nan nan nan nan nan nan nan nan nan nan 356 355 355 355 355 354 354 354 354 354 354 355 356 357 358 358 359 0 1 2 3 4 4 5 5 5 5 5 5 5 5 5 5 5 4 3 2 1 1 1 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 13 14 15 15 16 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 14 13 13 13 13 12 12 12 11 11 11 10 10 10 10 10 10 10 10 10 10 10 11 11 12 12 13 13 13 14 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 17 17 17 17 17 17 17 17 17 17 18 18 18 17 17 18 18 18 18 19 19 20 20 20 20 19 17 15 14 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 11 11 10 10 10 10 10 10 10 10 9 8 7 6 5 5 5 5 5 5 4 4 4 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 356 355 355 354 354 354 355 355 356 357 357 357 358 359 360 1 1 2 2 2 3 3 3 3 3 2 2 1 0 359 358 357 355 354 353 352 350 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 13 13 14 15 15 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 13 13 12 12 12 12 11 11 11 10 10 10 10 10 10 10 10 10 10 11 11 12 12 12 13 13 13 13 14 14 14 14 14 nan nan nan nan nan nan nan nan 15 15 16 nan nan nan nan nan nan 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 18 18 18 19 20 20 21 20 19 17 16 15 14 13 13 13 13 13 13 13 13 13 13 12 12 12 13 13 12 12 12 12 11 11 10 10 9 9 9 9 9 9 8 7 7 6 6 nan 5 5 5 6 6 5 5 nan nan nan nan nan nan nan nan nan nan nan nan nan 358 nan nan nan nan nan nan nan nan nan nan nan nan nan 357 356 356 355 355 355 356 356 357 357 357 358 358 359 359 0 0 0 0 1 1 1 1 1 1 0 359 358 356 355 352 351 349 347 345 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 nan nan nan nan 12 12 12 11 11 10 10 10 10 10 10 10 10 10 nan 11 11 12 12 13 13 13 13 13 13 13 13 13 14 14 14 15 nan nan nan nan nan 15 15 15 16 16 nan nan nan nan 17 17 17 17 17 17 17 17 17 17 17 17 16 16 17 17 17 18 18 18 19 20 21 20 19 17 16 15 14 14 14 14 14 14 14 14 14 13 13 13 12 12 12 12 12 13 13 13 12 12 11 11 10 9 9 8 8 8 8 8 8 8 8 nan 7 6 6 6 6 6 6 6 6 6 nan nan nan nan nan nan nan nan nan nan nan 358 358 358 358 nan nan nan nan nan nan nan nan nan nan nan 359 358 357 356 356 356 357 357 358 358 358 359 359 359 359 359 359 359 359 360 0 0 0 0 360 358 357 355 353 351 349 346 344 342 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan 10 10 10 nan nan 12 12 12 13 13 13 13 13 13 13 13 13 14 14 14 15 nan nan nan nan nan nan nan 15 16 16 17 17 17 17 17 17 17 18 18 18 18 18 18 17 16 16 16 16 17 17 17 18 18 19 20 20 20 19 17 16 15 15 16 16 16 16 15 14 14 14 14 14 13 13 13 12 12 12 12 12 13 13 12 12 12 11 10 10 9 8 8 8 8 9 9 9 9 8 7 7 7 7 7 7 7 7 7 6 6 6 nan nan nan nan nan nan nan nan nan nan nan 358 nan nan nan nan nan nan nan nan nan nan nan nan nan 0 359 359 358 358 358 358 358 359 359 360 360 360 359 359 359 359 359 359 359 359 359 359 359 358 357 356 354 351 349 347 344 341 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan 12 12 12 13 13 13 13 13 13 13 13 13 14 14 14 15 nan nan nan nan nan nan nan 16 16 17 17 17 17 17 17 18 18 18 18 18 18 18 18 17 16 16 16 17 17 17 18 18 19 20 21 20 19 18 16 16 16 16 17 17 17 16 15 15 15 15 15 14 14 13 13 13 13 13 13 12 12 13 13 12 nan nan nan nan 10 9 8 8 9 9 9 9 9 9 8 8 8 8 7 7 7 7 7 7 7 7 7 6 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 1 0 359 359 358 358 359 359 360 0 0 0 360 360 359 359 359 359 359 359 358 359 359 359 358 357 355 353 351 348 345 343 340 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 12 12 13 13 13 13 13 14 14 14 14 14 14 15 15 nan nan nan nan nan nan nan 16 17 17 17 17 18 18 18 18 18 19 19 19 19 18 18 17 17 17 17 17 17 17 18 18 20 21 21 20 18 16 16 16 17 18 18 17 17 16 16 16 16 16 15 15 14 14 13 13 13 13 13 12 12 12 12 nan nan nan nan nan nan nan nan nan 10 9 9 9 9 9 9 9 9 8 8 7 7 7 7 8 8 8 8 8 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 3 2 2 1 0 359 359 359 359 0 0 1 0 0 0 0 0 360 359 359 359 358 358 359 359 359 358 357 355 353 350 347 344 342 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 13 13 13 13 13 nan nan 14 14 14 14 15 15 nan nan nan nan nan nan nan 17 17 17 17 18 18 18 18 18 19 19 19 19 19 19 19 18 18 18 18 18 18 18 18 18 20 21 21 20 19 17 17 17 18 18 18 17 16 16 16 16 16 16 15 15 14 14 13 13 13 13 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan 9 9 9 9 9 9 9 9 8 8 8 8 8 8 8 8 8 8 8 8 8 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 3 3 3 2 1 1 0 0 0 0 1 1 1 1 0 0 0 0 360 359 359 359 359 359 359 359 359 358 357 355 352 349 346 344 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 18 18 17 18 18 18 18 18 18 19 19 20 20 20 20 20 19 19 19 19 19 19 18 18 18 20 20 21 20 19 18 17 18 18 19 18 17 16 15 15 15 16 15 15 14 14 14 14 13 13 13 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan 10 9 9 9 9 9 9 9 8 8 9 9 9 8 8 7 7 7 7 8 7 8 7 6 5 5 4 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 4 4 4 3 3 2 2 1 1 1 1 1 1 1 1 1 0 0 360 360 0 0 0 0 0 0 359 359 358 356 354 351 348 345 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 18 18 18 18 18 18 19 19 20 20 20 20 20 20 20 20 20 19 19 19 19 19 19 19 20 20 20 19 18 17 18 18 19 18 17 16 15 15 15 15 15 15 14 14 14 14 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 9 8 8 9 9 9 9 9 9 8 7 7 7 7 7 7 7 7 7 6 5 4 3 3 nan nan nan nan nan nan nan nan nan nan nan nan 3 4 4 4 4 4 3 3 2 2 2 2 2 2 2 1 1 0 0 0 0 0 0 1 1 1 1 0 360 359 357 355 353 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 18 18 18 19 19 19 19 19 19 19 19 20 20 20 21 21 21 20 21 20 20 20 20 19 19 19 20 nan 20 20 19 18 17 18 18 19 18 17 16 15 15 16 16 15 15 14 14 14 14 14 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 10 9 9 9 9 9 9 9 9 9 8 7 7 7 7 6 6 7 7 7 7 6 5 4 3 nan nan nan nan nan nan nan nan nan nan 2 2 3 4 4 4 4 4 4 4 3 3 3 3 3 3 2 2 1 1 1 0 1 1 1 1 1 1 1 1 1 0 359 357 355 353 350 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 19 19 19 19 19 19 19 20 20 20 21 21 21 21 21 21 21 21 21 21 20 20 20 nan nan nan 20 18 17 17 17 18 19 18 17 16 16 16 16 16 16 15 14 14 14 14 14 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 10 nan nan nan 10 10 9 9 9 9 8 8 7 7 6 6 6 6 7 7 8 7 6 5 4 3 nan nan nan nan nan nan nan nan nan 2 3 3 4 4 5 5 4 4 4 4 4 4 4 4 3 3 3 2 2 2 1 1 1 1 1 1 2 2 2 2 1 0 358 357 354 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 19 19 19 19 19 19 20 20 21 21 21 21 21 21 21 21 21 21 21 20 20 nan nan nan 20 18 17 17 17 18 19 19 18 17 16 16 16 16 16 15 15 14 15 15 15 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 10 10 9 9 9 9 8 8 7 7 6 6 6 7 7 8 8 7 6 5 4 nan nan nan nan nan nan nan nan nan nan 3 4 4 5 5 5 5 4 4 4 4 4 4 4 4 4 4 3 3 3 3 2 2 2 1 1 2 2 2 2 2 1 0 359 357 355 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 20 20 20 20 21 21 21 21 nan nan nan nan 21 21 nan nan nan nan nan 19 17 17 18 18 nan nan 18 17 16 16 17 17 16 15 15 15 15 15 16 15 15 14 14 13 13 13 14 13 13 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 11 11 10 10 10 9 9 8 8 7 7 7 7 7 7 7 8 8 7 7 5 4 nan nan nan nan nan nan nan nan nan nan 4 5 5 5 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 2 2 3 3 3 2 2 1 359 358 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan 20 20 21 nan nan nan nan nan nan nan nan nan nan nan nan nan 19 18 17 18 nan nan nan nan 18 17 17 nan nan 16 16 15 15 15 15 16 16 15 14 13 13 13 13 13 14 14 13 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 11 12 12 12 11 11 10 10 9 9 9 8 7 7 7 7 8 8 8 8 8 7 5 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 5 5 4 nan nan 4 4 4 4 4 5 5 5 4 4 4 4 3 3 3 3 3 3 3 3 2 1 360 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan 18 18 17 nan nan nan nan 16 nan nan nan nan 15 15 14 13 13 12 13 13 13 14 13 13 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 11 12 12 13 13 13 12 12 12 11 10 10 9 9 8 8 8 8 8 9 9 9 8 6 5 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 5 5 nan nan nan nan nan 5 5 5 5 5 5 5 5 5 4 4 4 3 3 4 4 4 4 3 3 1 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan 18 18 17 nan nan nan nan nan nan nan nan nan nan nan 14 14 13 13 13 13 13 13 13 13 13 13 13 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 12 12 11 10 10 9 9 9 9 9 9 9 9 9 7 6 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 5 5 nan nan nan nan 6 6 6 6 6 6 6 6 5 5 5 4 4 4 4 4 4 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 18 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 12 13 13 13 13 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 14 14 14 14 14 13 13 12 11 11 10 10 10 10 10 10 10 10 9 8 7 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 6 6 6 7 7 7 6 6 6 6 6 6 6 5 5 5 4 4 4 4 4 4 4 4 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 18 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 12 13 13 13 13 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 14 14 14 14 13 13 12 12 11 11 10 10 10 10 10 10 9 9 7 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 6 7 7 7 7 7 7 6 6 6 6 5 5 5 4 4 4 4 4 4 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 12 12 13 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 14 14 14 13 13 13 12 11 11 11 10 10 10 11 10 10 9 8 7 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 7 7 7 7 7 6 6 5 5 5 5 5 4 4 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 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 14 14 13 13 13 12 12 11 11 11 11 11 11 11 10 9 8 7 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 7 7 7 7 6 6 5 5 5 5 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 13 13 13 13 12 12 11 11 11 11 11 11 11 11 10 9 7 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 7 7 6 nan nan 5 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 13 13 13 12 12 11 11 11 11 12 12 11 11 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 14 14 14 13 13 12 12 11 11 11 11 12 12 12 11 11 10 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 15 14 14 14 13 13 12 12 12 11 11 12 12 12 12 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 nan nan nan nan 15 15 14 14 13 13 13 12 12 12 12 12 12 12 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 nan nan nan nan nan nan nan 14 14 13 13 12 12 12 12 12 13 13 13 12 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 nan nan nan nan nan 14 13 13 13 12 12 12 13 13 13 13 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 nan nan nan nan nan nan 13 13 13 12 12 12 13 13 14 14 14 13 13 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 13 12 13 13 14 14 14 14 14 13 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 13 13 13 14 14 15 15 15 14 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 13 13 13 14 15 16 15 15 14 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 15 16 16 16 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 15 16 16 16 16 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 14 15 15 16 16 16 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 15 15 16 16 16 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 16 16 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 -5 -4 -5 -7 -9 -9 -8 -9 -11 -13 -14 -12 -7 -2 1 3 5 6 8 8 7 3 -1 -1 1 1 -1 -7 -11 -11 -7 -2 1 0 -5 -13 -17 -16 -10 -4 -4 -12 -17 -14 -6 1 1 -2 -3 -3 -4 -7 -10 -7 -2 2 2 0 0 3 5 7 9 11 13 13 11 10 8 6 4 2 0 -1 -1 0 2 3 4 7 9 10 7 1 -4 -7 -8 -8 -6 -4 -2 -1 -2 -3 -5 -9 -12 -14 -15 -15 -13 -10 -5 -2 -2 -5 -9 -8 -3 2 5 3 -2 -6 -8 -10 -10 -8 -5 -4 -5 -7 -9 -10 -9 -8 -8 -9 -9 -10 -10 -10 -9 -9 -10 -12 -11 -8 -3 -0 0 -2 -1 1 4 5 3 -1 -3 -2 0 0 -4 -10 -13 -11 -5 1 6 6 1 -3 -6 -6 -5 -4 -4 -5 -5 -7 -9 -10 -10 -8 -6 -5 -8 -11 -13 -13 -13 -11 -9 -8 -9 -11 -12 -12 -12 -13 -14 -14 -14 -13 -11 -11 -11 -13 -14 -15 -15 -15 -15 -14 -13 -12 -12 -12 -12 -12 -11 -11 -10 -10 -10 -11 -12 -13 -14 -13 -12 -10 -9 -9 -9 -10 -11 -11 -11 -11 -11 -11 -11 -12 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -15 -15 -15 -15 -15 -15 -15 -14 -14 -14 -14 -13 -14 -15 -17 -19 -19 -18 -17 -16 -16 -15 -15 -14 -13 -12 -11 -11 -12 -12 -12 -12 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -10 -9 -8 -7 -5 -4 -4 -3 -3 -2 -1 0 1 1 0 -1 -2 -2 -3 -2 -1 -1 -1 -2 -3 -4 -5 -6 -6 -7 -7 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -7 -7 -6 -5 -4 -2 -1 -1 -3 -6 -7 -6 -6 -6 -5 -3 -2 -2 -2 -4 -5 -5 -5 -4 -4 -4 -4 -3 -3 -2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -2 -2 -2 -2 -2 -2 -2 -2 -1 0 1 2 3 3 3 2 2 2 2 2 2 2 2 3 5 6 6 6 6 5 5 5 5 5 6 7 8 7 7 -3 -1 -2 -5 -7 -6 -5 -6 -8 -10 -12 -13 -11 -8 -6 -6 -4 -1 4 7 7 3 -2 -4 -2 0 2 -0 -5 -9 -9 -6 -2 -0 -3 -10 -15 -17 -13 -7 -4 -10 -16 -15 -9 0 4 0 -2 -4 -5 -7 -9 -7 -3 0 1 -1 -1 1 3 6 8 11 14 15 14 12 10 8 6 4 1 -1 -2 -1 1 3 4 5 6 7 6 3 -1 -5 -8 -9 -9 -5 -2 -0 -2 -4 -7 -9 -11 -13 -14 -14 -13 -11 -8 -5 -5 -7 -8 -6 -1 3 5 3 -2 -4 -7 -9 -10 -10 -9 -7 -6 -6 -7 -7 -7 -7 -7 -8 -9 -9 -9 -10 -11 -12 -13 -12 -9 -5 -0 2 2 1 2 4 5 4 1 -2 -1 1 1 -3 -9 -13 -10 -4 2 6 5 -1 -5 -7 -6 -5 -4 -5 -5 -7 -8 -9 -10 -10 -10 -8 -6 -4 -6 -10 -12 -13 -13 -12 -10 -9 -9 -10 -11 -12 -13 -14 -14 -14 -13 -12 -11 -12 -13 -14 -15 -15 -15 -15 -15 -14 -13 -12 -12 -13 -13 -12 -11 -10 -10 -10 -11 -12 -13 -14 -13 -12 -11 -10 -9 -9 -10 -11 -11 -11 -11 -10 -10 -11 -11 -12 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -15 -16 -16 -16 -16 -16 -16 -15 -15 -15 -14 -14 -14 -15 -17 -18 -18 -18 -17 -16 -16 -16 -15 -14 -13 -12 -12 -12 -12 -12 -12 -12 -11 -11 -10 -10 -10 -10 -10 -11 -11 -11 -11 -10 -10 -9 -8 -7 -7 -6 -5 -4 -3 -2 -1 -1 -1 -2 -3 -3 -3 -2 -1 -0 -0 -0 -1 -2 -3 -4 -5 -6 -7 -7 -8 -7 -7 -8 -8 -9 -9 -9 -9 -9 -9 -9 -8 -7 -6 -4 -3 -1 0 1 -0 -3 -6 -6 -5 -4 -3 -1 -1 -1 -3 -5 -5 -6 -6 -6 -5 -5 -5 -4 -4 -3 -3 -2 -2 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -1 -1 -0 0 1 2 2 2 2 2 1 1 1 1 2 3 4 5 6 6 6 5 5 5 5 6 6 7 7 7 7 2 5 6 5 4 5 6 7 7 5 1 -3 -3 -3 -3 -4 -7 -8 -6 -0 4 4 -1 -4 -5 -4 -1 0 -1 -5 -7 -7 -4 -2 -2 -7 -13 -15 -14 -10 -6 -9 -14 -16 -11 -2 5 3 -0 -3 -5 -6 -7 -6 -3 -1 -1 -1 -1 0 2 4 7 10 13 15 15 14 12 10 8 6 3 -0 -2 -2 0 3 4 5 4 4 4 3 1 -2 -5 -8 -10 -7 -2 1 1 -3 -7 -10 -12 -13 -13 -13 -12 -10 -9 -9 -9 -9 -9 -5 0 5 6 3 0 -2 -5 -8 -10 -12 -12 -10 -8 -5 -4 -4 -5 -6 -7 -8 -8 -8 -9 -11 -12 -14 -14 -12 -7 -1 3 5 3 2 2 2 2 0 -2 -2 -0 0 -3 -8 -13 -12 -6 1 4 3 -3 -8 -9 -7 -6 -5 -6 -6 -7 -7 -8 -9 -10 -9 -9 -8 -7 -5 -6 -9 -12 -13 -13 -13 -11 -9 -8 -9 -11 -12 -14 -14 -14 -14 -12 -12 -11 -13 -15 -16 -16 -15 -15 -15 -15 -14 -13 -13 -13 -13 -13 -12 -11 -10 -10 -10 -11 -13 -13 -13 -12 -11 -11 -10 -9 -9 -10 -11 -12 -11 -11 -10 -10 -11 -11 -12 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -15 -16 -17 -17 -17 -17 -17 -16 -15 -15 -15 -14 -14 -15 -16 -17 -17 -17 -17 -16 -16 -15 -15 -14 -13 -13 -13 -12 -12 -12 -12 -12 -11 -10 -10 -10 -10 -10 -10 -11 -11 -11 -11 -11 -11 -11 -11 -10 -9 -8 -7 -7 -6 -5 -4 -3 -3 -3 -4 -4 -4 -3 -2 -1 -1 -1 -1 -2 -3 -5 -6 -6 -6 -7 -7 -7 -7 -7 -8 -9 -10 -10 -10 -10 -10 -9 -8 -7 -5 -4 -3 -2 -0 2 3 3 -0 -4 -3 -2 -1 -1 -1 -3 -4 -5 -6 -6 -7 -7 -6 -6 -6 -5 -5 -4 -4 -4 -4 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -3 -3 -2 -2 -2 -1 -1 0 1 1 1 1 1 1 1 1 1 2 3 4 5 5 5 5 5 5 5 5 6 6 7 7 6 -2 1 5 8 9 11 14 15 15 12 8 5 4 5 6 4 -2 -10 -13 -8 -1 4 3 -1 -5 -7 -5 -3 -1 -3 -5 -6 -5 -4 -3 -6 -11 -13 -13 -11 -7 -9 -13 -16 -13 -5 5 7 3 -2 -5 -6 -6 -4 -2 -1 -1 -2 -2 1 2 4 5 7 10 13 15 15 14 12 9 7 4 1 -2 -2 -0 2 3 3 3 2 2 3 2 1 -2 -5 -9 -7 -3 1 1 -2 -7 -10 -11 -12 -12 -11 -10 -10 -10 -10 -11 -11 -10 -7 -1 4 6 5 3 -0 -4 -7 -10 -12 -13 -12 -9 -6 -4 -3 -4 -6 -6 -7 -7 -8 -9 -11 -12 -14 -14 -11 -4 3 7 7 3 -0 -1 -1 -1 -2 -3 -2 -2 -5 -9 -13 -14 -9 -2 2 1 -4 -9 -10 -8 -7 -7 -7 -8 -7 -7 -7 -7 -8 -9 -9 -9 -9 -8 -7 -6 -8 -11 -13 -14 -13 -12 -10 -8 -8 -10 -12 -14 -15 -14 -13 -12 -11 -12 -14 -16 -16 -15 -14 -14 -14 -14 -13 -13 -13 -13 -13 -12 -11 -11 -10 -10 -11 -12 -13 -13 -12 -11 -11 -10 -10 -9 -10 -11 -11 -11 -11 -10 -10 -10 -11 -11 -12 -12 -12 -13 -13 -13 -13 -14 -14 -14 -14 -14 -15 -16 -17 -18 -18 -17 -17 -16 -15 -15 -14 -14 -14 -14 -15 -15 -16 -16 -16 -16 -15 -15 -15 -14 -14 -14 -13 -13 -13 -12 -12 -11 -11 -10 -10 -10 -10 -10 -11 -11 -11 -12 -12 -12 -12 -12 -12 -11 -11 -10 -10 -9 -8 -8 -7 -6 -5 -5 -5 -5 -4 -3 -3 -3 -3 -3 -3 -4 -5 -6 -6 -7 -7 -6 -6 -6 -7 -7 -8 -9 -10 -11 -11 -11 -10 -9 -8 -6 -5 -5 -4 -3 -1 2 4 6 6 3 1 0 -0 -1 -3 -4 -4 -5 -6 -6 -7 -7 -7 -7 -6 -6 -6 -6 -6 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -6 -6 -6 -5 -5 -4 -3 -3 -3 -2 -2 -1 -1 -0 0 1 1 1 1 1 1 1 1 2 3 3 4 4 4 4 4 4 4 5 5 5 5 5 -8 -6 -4 -1 2 6 12 14 12 6 2 1 4 8 11 11 6 -4 -11 -12 -5 3 7 3 -3 -6 -7 -6 -4 -3 -4 -5 -5 -5 -5 -7 -10 -12 -13 -11 -8 -8 -11 -15 -15 -9 3 9 7 2 -3 -6 -5 -3 -1 -0 -1 -2 -1 0 2 3 4 5 7 10 13 14 14 13 10 8 5 2 0 -1 -0 1 2 1 1 0 0 1 0 -0 -1 -3 -3 -2 -0 1 -0 -3 -5 -8 -10 -10 -10 -9 -9 -9 -10 -10 -11 -11 -11 -10 -6 -1 4 6 5 1 -3 -7 -9 -11 -11 -10 -8 -6 -5 -5 -6 -6 -6 -6 -5 -7 -8 -10 -11 -13 -13 -9 -2 5 7 5 -0 -5 -5 -3 -2 -2 -3 -4 -7 -10 -13 -14 -12 -5 -1 -1 -5 -9 -11 -9 -7 -7 -8 -9 -9 -8 -6 -6 -6 -7 -8 -9 -10 -10 -9 -8 -7 -8 -10 -12 -13 -14 -13 -12 -9 -8 -9 -12 -14 -15 -14 -13 -12 -12 -13 -15 -16 -15 -14 -13 -14 -14 -14 -13 -13 -13 -13 -13 -12 -11 -10 -11 -11 -12 -13 -13 -12 -11 -11 -10 -10 -9 -9 -10 -11 -11 -10 -10 -10 -10 -11 -11 -11 -11 -12 -12 -12 -12 -12 -13 -14 -15 -14 -14 -14 -15 -16 -17 -17 -17 -17 -16 -15 -14 -14 -14 -14 -14 -14 -14 -14 -15 -15 -16 -16 -15 -15 -15 -15 -14 -14 -14 -14 -14 -13 -12 -11 -10 -10 -10 -10 -11 -11 -11 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -11 -10 -9 -8 -7 -7 -6 -5 -5 -5 -5 -6 -6 -6 -6 -6 -7 -7 -7 -7 -7 -6 -6 -6 -6 -7 -8 -9 -10 -11 -11 -11 -10 -8 -7 -6 -6 -6 -5 -4 -1 1 4 7 9 8 5 2 -1 -3 -4 -5 -5 -5 -5 -6 -7 -7 -7 -6 -6 -6 -6 -7 -7 -8 -8 -9 -9 -9 -9 -9 -9 -9 -8 -8 -8 -7 -7 -7 -6 -6 -5 -5 -4 -4 -3 -3 -2 -2 -1 -0 0 0 1 1 1 1 1 1 1 1 1 2 2 2 2 2 3 3 3 4 4 4 4 -11 -12 -11 -11 -9 -6 1 5 4 -1 -6 -8 -5 2 9 13 11 5 -4 -8 -7 -1 6 6 1 -3 -5 -6 -5 -4 -4 -5 -5 -6 -6 -7 -9 -11 -12 -11 -8 -7 -10 -15 -17 -14 -3 9 11 6 -0 -4 -4 -2 1 2 2 1 0 1 2 3 3 4 5 7 10 13 14 14 12 9 6 4 2 1 1 1 0 -0 -1 -2 -1 -1 -1 -2 -2 -2 -2 -1 -0 -1 -2 -4 -6 -8 -9 -9 -8 -7 -8 -8 -9 -9 -9 -10 -12 -12 -10 -6 -1 4 5 2 -2 -5 -8 -9 -9 -8 -7 -7 -8 -9 -9 -9 -7 -5 -4 -5 -6 -8 -10 -12 -12 -8 -1 4 4 0 -6 -9 -8 -4 -1 -0 -2 -7 -11 -14 -15 -13 -8 -3 -2 -5 -8 -10 -9 -8 -8 -9 -10 -10 -10 -8 -5 -4 -4 -5 -7 -9 -10 -10 -10 -9 -8 -8 -9 -11 -13 -14 -14 -13 -10 -9 -9 -11 -14 -14 -13 -12 -11 -12 -15 -16 -15 -14 -13 -13 -14 -14 -13 -13 -13 -13 -13 -12 -11 -11 -11 -12 -13 -13 -13 -13 -12 -11 -10 -10 -9 -9 -9 -10 -11 -10 -10 -10 -10 -11 -11 -11 -11 -11 -11 -11 -11 -11 -12 -13 -14 -14 -14 -13 -13 -14 -14 -15 -16 -16 -16 -15 -14 -14 -14 -14 -14 -14 -14 -13 -14 -14 -14 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -14 -13 -12 -11 -10 -10 -10 -11 -11 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -13 -13 -13 -13 -13 -13 -12 -11 -11 -10 -9 -8 -7 -6 -6 -7 -8 -8 -9 -9 -9 -9 -8 -8 -7 -6 -6 -5 -6 -6 -7 -8 -9 -10 -10 -10 -10 -9 -8 -7 -7 -7 -7 -6 -4 -2 1 4 6 8 8 5 2 -1 -3 -4 -5 -5 -5 -5 -6 -6 -6 -6 -6 -6 -6 -6 -7 -8 -8 -9 -9 -10 -10 -10 -10 -10 -10 -10 -9 -9 -9 -8 -8 -7 -7 -6 -6 -5 -5 -5 -4 -4 -3 -2 -2 -1 -0 1 1 1 1 1 0 0 0 -0 -0 -0 -0 0 1 1 2 2 2 2 2 2 -11 -12 -13 -15 -16 -16 -11 -5 -2 -2 -6 -13 -14 -9 -1 5 9 8 3 -1 -3 -2 2 5 3 0 -2 -4 -5 -5 -5 -6 -6 -6 -6 -7 -9 -11 -13 -12 -8 -6 -8 -13 -17 -18 -10 4 11 10 4 -2 -3 -1 1 3 4 3 2 2 2 3 3 4 4 6 9 11 13 14 13 10 8 6 4 3 2 0 -1 -2 -3 -3 -2 -2 -2 -4 -5 -4 -2 -2 -2 -2 -4 -5 -7 -8 -8 -8 -7 -6 -6 -6 -7 -7 -7 -9 -11 -12 -12 -10 -7 -2 2 2 -0 -3 -5 -6 -6 -6 -7 -8 -10 -11 -12 -11 -9 -6 -3 -3 -5 -7 -10 -12 -12 -8 -1 2 0 -4 -10 -13 -10 -5 -0 1 -3 -9 -13 -15 -14 -10 -5 -2 -4 -6 -8 -8 -8 -8 -9 -10 -10 -10 -9 -7 -5 -3 -3 -4 -7 -9 -10 -10 -10 -10 -9 -8 -9 -10 -12 -14 -15 -14 -11 -9 -9 -11 -13 -13 -12 -12 -12 -14 -15 -15 -14 -13 -13 -13 -14 -14 -13 -13 -12 -13 -12 -11 -11 -12 -13 -14 -14 -14 -13 -12 -11 -10 -10 -9 -9 -9 -10 -11 -10 -10 -10 -10 -10 -11 -11 -12 -11 -11 -11 -10 -10 -11 -11 -12 -13 -13 -13 -13 -12 -13 -13 -14 -15 -15 -15 -14 -14 -13 -14 -14 -14 -14 -14 -14 -13 -13 -14 -15 -15 -16 -16 -16 -15 -15 -16 -16 -15 -14 -13 -12 -11 -10 -10 -11 -11 -11 -12 -12 -12 -12 -13 -13 -12 -12 -12 -12 -13 -13 -13 -14 -14 -14 -14 -14 -13 -12 -11 -10 -9 -8 -9 -9 -9 -10 -10 -10 -10 -10 -9 -7 -6 -5 -4 -5 -5 -6 -7 -8 -8 -9 -9 -9 -9 -8 -7 -7 -8 -8 -8 -7 -5 -3 0 2 4 5 5 3 0 -1 -2 -3 -5 -5 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -7 -8 -9 -9 -10 -10 -10 -11 -11 -11 -11 -10 -10 -10 -9 -9 -8 -8 -7 -7 -7 -6 -6 -5 -5 -4 -4 -3 -2 -2 -1 -0 0 0 0 0 -0 -1 -1 -2 -2 -2 -1 -1 -0 0 1 1 1 1 1 -8 -9 -11 -13 -16 -16 -14 -11 -5 0 -2 -12 -15 -15 -13 -7 0 6 5 4 2 0 1 4 4 2 -1 -3 -5 -5 -6 -7 -7 -6 -6 -6 -8 -11 -13 -13 -10 -7 -6 -10 -15 -19 -16 -5 7 11 8 1 -3 -2 1 4 5 5 5 3 2 3 3 4 6 7 8 10 12 14 14 12 10 7 6 4 2 -0 -2 -4 -4 -4 -4 -3 -3 -4 -5 -5 -4 -4 -4 -3 -4 -6 -6 -7 -8 -8 -6 -4 -4 -4 -4 -4 -4 -6 -8 -10 -11 -12 -11 -8 -4 -1 -0 -1 -3 -4 -4 -5 -6 -8 -10 -11 -12 -12 -10 -7 -4 -2 -3 -6 -9 -12 -12 -8 -2 0 -2 -7 -11 -13 -11 -5 -1 -0 -4 -9 -13 -13 -11 -7 -3 -3 -5 -7 -7 -7 -7 -8 -10 -10 -9 -7 -7 -6 -4 -3 -2 -4 -7 -9 -10 -10 -11 -11 -10 -9 -9 -10 -12 -14 -15 -14 -12 -10 -10 -11 -12 -12 -12 -12 -13 -15 -15 -14 -13 -13 -13 -14 -14 -13 -13 -13 -13 -12 -12 -12 -12 -13 -15 -15 -14 -14 -13 -12 -11 -10 -9 -9 -9 -9 -10 -11 -10 -10 -10 -10 -11 -11 -11 -11 -11 -11 -10 -10 -10 -11 -11 -12 -12 -12 -12 -11 -12 -12 -12 -13 -13 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -15 -16 -16 -15 -15 -15 -15 -15 -15 -14 -13 -12 -11 -11 -11 -11 -11 -11 -11 -12 -12 -12 -12 -12 -12 -12 -12 -13 -13 -13 -14 -14 -14 -15 -15 -15 -15 -15 -13 -12 -11 -10 -10 -10 -10 -10 -10 -11 -10 -9 -8 -6 -4 -3 -4 -4 -5 -6 -7 -7 -8 -8 -7 -7 -7 -7 -7 -8 -9 -9 -9 -8 -6 -4 -2 -0 1 2 1 0 -1 -1 -1 -3 -4 -5 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -7 -8 -8 -9 -9 -10 -10 -10 -10 -11 -11 -11 -10 -10 -10 -9 -9 -8 -8 -7 -7 -7 -6 -6 -5 -5 -4 -4 -3 -2 -2 -1 -1 -1 -1 -1 -2 -2 -3 -3 -3 -2 -2 -1 -1 -0 0 0 0 1 -2 -3 -5 -8 -11 -13 -14 -14 -10 -2 2 -4 -11 -14 -15 -14 -11 -5 -3 -2 -1 -0 2 6 6 4 -0 -3 -4 -5 -5 -6 -7 -7 -6 -6 -7 -9 -12 -14 -13 -9 -6 -7 -11 -17 -19 -13 -0 8 9 4 -2 -3 -1 3 5 6 6 5 3 3 4 6 7 8 9 10 11 13 13 12 11 8 6 4 1 -1 -3 -4 -5 -5 -4 -4 -3 -3 -3 -5 -6 -7 -6 -5 -4 -5 -4 -5 -7 -7 -6 -4 -2 -2 -3 -3 -3 -3 -5 -7 -9 -11 -13 -12 -9 -4 -2 -1 -3 -3 -3 -4 -5 -7 -9 -11 -12 -13 -12 -10 -6 -2 -2 -5 -8 -11 -12 -8 -3 -1 -3 -7 -10 -11 -8 -5 -3 -4 -6 -9 -10 -9 -6 -4 -4 -6 -6 -6 -5 -6 -7 -9 -9 -8 -6 -5 -5 -6 -5 -3 -3 -4 -7 -9 -10 -11 -11 -11 -11 -10 -10 -11 -12 -14 -15 -14 -12 -11 -10 -11 -12 -12 -13 -14 -15 -16 -15 -14 -13 -13 -13 -14 -13 -13 -13 -13 -13 -13 -12 -13 -14 -15 -16 -15 -14 -13 -12 -11 -10 -9 -9 -9 -10 -10 -11 -11 -10 -10 -10 -10 -11 -11 -11 -11 -10 -10 -10 -10 -10 -11 -11 -11 -11 -11 -11 -11 -11 -11 -12 -12 -13 -13 -13 -13 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -15 -15 -15 -15 -14 -14 -14 -14 -14 -14 -13 -13 -12 -12 -11 -11 -11 -11 -11 -11 -11 -12 -12 -12 -12 -12 -12 -13 -13 -13 -14 -14 -15 -15 -16 -17 -17 -16 -15 -14 -13 -12 -11 -11 -10 -10 -10 -10 -10 -9 -7 -5 -3 -3 -4 -4 -5 -6 -6 -7 -7 -6 -6 -6 -6 -6 -6 -7 -8 -9 -9 -9 -8 -6 -5 -3 -2 -1 -1 -1 -2 -2 -2 -3 -4 -5 -6 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -7 -8 -8 -9 -9 -9 -9 -10 -10 -10 -10 -10 -10 -9 -9 -9 -8 -8 -8 -7 -7 -7 -7 -6 -5 -5 -4 -4 -3 -3 -2 -2 -2 -2 -2 -2 -3 -3 -3 -3 -3 -2 -2 -1 -1 -1 -0 0 0 2 1 -2 -5 -9 -14 -19 -16 -7 2 3 -1 -7 -12 -15 -15 -12 -9 -8 -8 -6 -1 5 7 5 2 -2 -4 -5 -5 -6 -6 -6 -6 -6 -7 -8 -11 -14 -15 -12 -7 -5 -7 -13 -19 -20 -10 1 7 5 -1 -4 -2 1 4 6 6 6 5 5 5 7 8 9 9 9 10 11 12 12 11 9 7 4 1 -2 -4 -5 -5 -5 -4 -3 -3 -2 -3 -4 -6 -8 -8 -8 -6 -4 -2 -2 -5 -7 -7 -5 -3 -2 -2 -2 -2 -2 -3 -5 -7 -10 -12 -13 -10 -7 -4 -3 -4 -5 -4 -3 -4 -6 -8 -10 -11 -12 -13 -11 -8 -3 -2 -3 -7 -10 -11 -9 -6 -4 -3 -5 -6 -6 -5 -5 -5 -8 -9 -9 -8 -5 -4 -4 -6 -7 -6 -5 -4 -6 -8 -9 -7 -5 -3 -4 -7 -7 -6 -4 -3 -5 -8 -9 -10 -11 -11 -11 -11 -10 -11 -12 -13 -14 -14 -13 -12 -11 -11 -11 -11 -12 -14 -15 -16 -16 -14 -13 -13 -13 -14 -14 -13 -13 -13 -13 -13 -13 -13 -14 -16 -16 -16 -15 -14 -13 -12 -11 -9 -9 -9 -10 -11 -11 -11 -11 -10 -10 -11 -11 -11 -11 -11 -10 -10 -9 -10 -10 -11 -11 -11 -11 -10 -10 -10 -10 -11 -11 -12 -12 -12 -12 -13 -13 -13 -14 -14 -14 -14 -14 -15 -15 -15 -14 -14 -14 -14 -15 -15 -14 -13 -12 -12 -12 -12 -13 -13 -13 -12 -12 -11 -11 -10 -10 -10 -10 -11 -11 -11 -11 -12 -12 -12 -13 -13 -13 -14 -14 -15 -16 -16 -17 -17 -17 -16 -15 -14 -13 -12 -11 -11 -11 -11 -11 -10 -9 -7 -6 -5 -5 -6 -6 -6 -6 -7 -7 -6 -6 -6 -6 -6 -6 -6 -7 -8 -9 -10 -10 -9 -8 -7 -6 -5 -4 -3 -3 -3 -3 -3 -4 -4 -5 -6 -6 -6 -5 -5 -5 -6 -6 -6 -6 -5 -5 -5 -5 -6 -7 -7 -8 -8 -8 -8 -8 -9 -9 -9 -9 -9 -9 -9 -9 -8 -8 -8 -7 -7 -7 -7 -7 -6 -6 -5 -5 -4 -4 -3 -3 -3 -2 -2 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -1 -1 -3 0 2 2 0 -3 -10 -17 -18 -13 -5 -0 0 -2 -6 -10 -13 -12 -10 -9 -9 -10 -8 -3 3 6 4 0 -3 -5 -5 -5 -5 -6 -6 -6 -6 -7 -9 -12 -16 -16 -11 -6 -5 -9 -17 -22 -18 -7 2 5 1 -3 -2 -0 2 3 5 5 6 6 7 7 9 9 9 9 9 9 10 11 11 9 7 5 2 -2 -4 -5 -6 -5 -5 -4 -4 -3 -3 -4 -6 -8 -10 -11 -11 -6 -2 -0 -2 -5 -8 -8 -5 -3 -2 -2 -2 -2 -2 -4 -6 -8 -9 -10 -8 -6 -6 -6 -8 -8 -6 -4 -3 -3 -6 -8 -10 -12 -12 -11 -9 -4 -1 -2 -5 -8 -10 -10 -9 -7 -4 -3 -2 -2 -3 -5 -8 -10 -12 -10 -7 -4 -3 -4 -5 -6 -4 -3 -4 -7 -9 -8 -4 -2 -3 -6 -9 -9 -7 -5 -4 -6 -8 -10 -11 -11 -11 -11 -11 -11 -12 -13 -14 -14 -13 -13 -12 -11 -11 -11 -11 -13 -15 -16 -17 -15 -14 -14 -14 -15 -15 -14 -13 -12 -13 -13 -13 -13 -14 -15 -16 -16 -16 -15 -14 -13 -11 -10 -10 -10 -11 -12 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -9 -9 -10 -10 -10 -11 -11 -10 -10 -10 -10 -10 -11 -11 -11 -11 -11 -12 -12 -12 -13 -13 -13 -13 -14 -14 -15 -15 -15 -15 -14 -14 -14 -14 -14 -13 -12 -11 -10 -10 -10 -11 -11 -12 -12 -12 -11 -11 -10 -10 -10 -10 -10 -10 -10 -11 -11 -12 -12 -13 -13 -14 -14 -15 -15 -16 -16 -17 -17 -17 -16 -15 -14 -13 -13 -12 -12 -12 -12 -12 -11 -10 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -7 -7 -7 -6 -6 -7 -7 -8 -9 -10 -11 -10 -10 -9 -8 -7 -6 -5 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -5 -5 -5 -4 -4 -4 -4 -4 -5 -5 -6 -6 -7 -7 -7 -7 -7 -8 -8 -8 -9 -9 -9 -9 -8 -8 -8 -7 -7 -7 -7 -7 -7 -7 -6 -6 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -1 -7 -4 -1 2 5 3 -3 -10 -13 -12 -10 -6 -4 -3 -5 -7 -9 -9 -7 -7 -9 -12 -14 -11 -4 2 4 3 -1 -4 -5 -5 -5 -5 -6 -6 -7 -7 -8 -11 -15 -18 -15 -9 -5 -6 -13 -21 -22 -14 -3 4 5 1 -0 -1 -0 0 2 3 5 7 7 8 9 9 8 8 8 8 9 9 9 9 7 5 2 -1 -4 -6 -7 -6 -5 -5 -5 -4 -4 -4 -5 -8 -10 -12 -12 -9 -4 0 0 -4 -8 -11 -10 -7 -4 -2 -1 -1 -1 -3 -6 -8 -8 -6 -4 -4 -5 -8 -11 -13 -10 -6 -3 -1 -3 -6 -9 -11 -11 -10 -9 -5 -1 -1 -3 -7 -10 -11 -11 -9 -5 -2 0 -1 -3 -6 -9 -12 -13 -11 -8 -6 -4 -4 -4 -3 -2 -3 -5 -8 -9 -5 -2 -2 -4 -9 -11 -10 -7 -5 -5 -6 -9 -11 -11 -11 -11 -11 -11 -12 -13 -14 -14 -13 -13 -12 -12 -11 -11 -11 -12 -14 -16 -17 -16 -14 -13 -14 -15 -16 -15 -14 -13 -12 -13 -13 -14 -15 -15 -16 -16 -16 -15 -15 -14 -12 -11 -10 -11 -12 -13 -13 -13 -12 -12 -11 -12 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -11 -11 -11 -11 -12 -12 -13 -13 -14 -14 -14 -15 -15 -14 -14 -14 -14 -13 -13 -12 -11 -10 -9 -9 -9 -10 -10 -11 -11 -11 -10 -10 -9 -9 -9 -9 -10 -10 -11 -11 -12 -12 -13 -13 -14 -15 -15 -15 -16 -16 -17 -17 -17 -16 -16 -15 -14 -14 -14 -14 -14 -13 -13 -12 -12 -11 -10 -10 -10 -10 -10 -10 -11 -10 -10 -10 -9 -9 -8 -8 -8 -8 -8 -9 -11 -11 -11 -10 -10 -9 -9 -8 -7 -7 -6 -6 -6 -6 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -4 -4 -4 -4 -4 -4 -5 -5 -6 -6 -6 -6 -7 -7 -8 -8 -8 -8 -8 -8 -8 -7 -7 -7 -6 -6 -6 -6 -6 -7 -6 -6 -6 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -5 -5 -4 -0 3 4 1 -2 -5 -8 -10 -10 -8 -7 -7 -7 -7 -6 -4 -5 -8 -12 -14 -15 -12 -5 1 3 1 -2 -4 -5 -5 -5 -6 -6 -7 -7 -8 -9 -14 -19 -20 -15 -8 -5 -10 -19 -23 -18 -7 3 8 6 3 0 -1 -2 -2 -0 2 5 7 8 9 9 8 7 7 7 7 7 7 6 6 4 2 -1 -3 -5 -7 -7 -6 -5 -5 -5 -5 -5 -5 -8 -10 -12 -13 -10 -5 -1 -0 -4 -9 -13 -13 -11 -7 -3 -0 2 2 -0 -5 -8 -8 -5 -2 -2 -5 -10 -14 -15 -13 -9 -4 -0 -0 -3 -7 -8 -9 -9 -7 -5 -2 -1 -3 -6 -9 -11 -10 -8 -5 -3 -2 -2 -4 -6 -9 -11 -12 -12 -11 -8 -6 -3 -2 -1 -2 -4 -7 -8 -7 -4 -2 -4 -7 -10 -11 -9 -7 -6 -6 -8 -10 -11 -11 -11 -11 -11 -12 -13 -14 -14 -14 -13 -12 -12 -12 -12 -11 -12 -12 -14 -15 -16 -14 -13 -13 -15 -17 -17 -15 -13 -12 -12 -13 -14 -15 -16 -16 -16 -16 -16 -15 -14 -13 -12 -11 -11 -12 -13 -14 -14 -13 -13 -12 -12 -12 -12 -11 -11 -11 -11 -10 -10 -11 -11 -11 -11 -10 -10 -10 -9 -10 -10 -10 -10 -10 -10 -10 -10 -10 -9 -9 -10 -10 -11 -11 -12 -12 -13 -13 -14 -14 -14 -14 -14 -14 -13 -13 -12 -11 -10 -9 -9 -8 -8 -8 -9 -9 -10 -10 -10 -10 -9 -9 -9 -9 -10 -10 -11 -11 -11 -12 -13 -14 -14 -15 -15 -15 -16 -16 -17 -17 -17 -17 -17 -16 -16 -15 -15 -15 -15 -15 -15 -14 -13 -12 -11 -11 -11 -11 -12 -12 -12 -12 -11 -11 -10 -10 -9 -9 -9 -10 -10 -11 -12 -11 -10 -10 -9 -9 -9 -9 -8 -8 -8 -7 -6 -6 -6 -6 -5 -4 -3 -3 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -4 -5 -5 -5 -6 -6 -7 -7 -7 -8 -7 -7 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -4 -7 -7 -6 -3 -0 1 2 1 -1 -4 -7 -9 -10 -10 -9 -6 -4 -2 -3 -6 -9 -12 -14 -14 -12 -6 -1 2 -0 -2 -4 -5 -5 -6 -6 -7 -8 -8 -9 -12 -18 -23 -20 -13 -8 -9 -17 -21 -19 -10 -0 7 8 5 2 0 -2 -3 -3 -1 1 4 6 8 9 8 7 7 6 6 5 4 3 3 2 0 -2 -3 -5 -6 -7 -7 -6 -5 -5 -5 -5 -6 -7 -8 -10 -12 -10 -7 -3 -2 -5 -10 -14 -16 -15 -11 -6 -1 5 6 4 -1 -6 -8 -5 -3 -3 -6 -11 -14 -15 -14 -11 -7 -2 0 -1 -3 -5 -6 -6 -6 -6 -5 -4 -4 -5 -8 -8 -7 -5 -4 -5 -6 -6 -5 -5 -6 -9 -11 -11 -11 -9 -6 -3 -1 -1 -3 -6 -7 -6 -4 -3 -4 -6 -9 -10 -9 -8 -8 -7 -8 -9 -10 -11 -11 -11 -11 -11 -13 -14 -15 -14 -13 -13 -13 -12 -12 -12 -12 -12 -13 -14 -14 -14 -12 -12 -14 -16 -17 -17 -15 -13 -13 -13 -14 -15 -16 -16 -17 -16 -16 -16 -15 -14 -13 -12 -12 -13 -14 -14 -14 -13 -13 -13 -12 -12 -12 -12 -12 -11 -11 -11 -12 -12 -12 -12 -12 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -9 -9 -9 -9 -9 -9 -10 -11 -11 -12 -12 -12 -13 -13 -14 -14 -14 -13 -13 -12 -12 -11 -10 -9 -9 -8 -8 -8 -8 -8 -9 -9 -10 -10 -10 -9 -9 -9 -10 -10 -11 -11 -12 -12 -13 -14 -14 -14 -15 -15 -16 -16 -17 -17 -17 -17 -17 -17 -16 -15 -15 -15 -15 -16 -16 -15 -14 -12 -11 -11 -11 -11 -12 -12 -12 -11 -11 -11 -10 -10 -10 -10 -10 -11 -12 -12 -12 -11 -9 -9 -9 -9 -9 -9 -9 -8 -7 -6 -6 -6 -7 -6 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -4 -4 -4 -3 -3 -3 -3 -3 -3 -4 -4 -4 -5 -5 -5 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -2 -2 -5 -8 -9 -8 -5 -2 -1 1 3 3 0 -4 -8 -10 -10 -8 -4 -2 -2 -4 -6 -8 -10 -13 -14 -12 -7 -2 -1 -1 -3 -4 -5 -5 -6 -7 -8 -8 -9 -12 -17 -23 -23 -18 -12 -9 -14 -19 -19 -14 -6 2 5 5 4 3 1 -1 -4 -4 -2 1 5 8 9 8 7 6 5 4 3 1 0 -1 -2 -3 -3 -3 -4 -5 -6 -7 -6 -5 -5 -4 -5 -6 -8 -9 -10 -12 -11 -8 -5 -5 -7 -10 -14 -16 -17 -15 -11 -3 5 8 6 1 -5 -7 -6 -5 -5 -8 -11 -14 -14 -13 -12 -9 -6 -2 -0 -0 -2 -3 -4 -6 -7 -8 -7 -6 -6 -5 -4 -3 -2 -4 -7 -9 -9 -7 -4 -4 -5 -9 -10 -10 -7 -4 -2 -2 -3 -5 -6 -6 -4 -3 -4 -7 -8 -9 -8 -7 -8 -9 -9 -10 -10 -10 -10 -10 -10 -11 -12 -14 -14 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -13 -12 -12 -13 -15 -17 -17 -16 -14 -13 -13 -14 -15 -16 -17 -17 -16 -16 -16 -16 -16 -14 -13 -13 -13 -14 -15 -14 -14 -13 -13 -13 -13 -13 -13 -12 -12 -12 -12 -13 -13 -13 -13 -13 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -9 -9 -9 -9 -9 -9 -10 -10 -11 -11 -11 -12 -12 -12 -13 -13 -13 -13 -12 -12 -11 -10 -9 -9 -9 -8 -8 -8 -8 -8 -8 -9 -9 -10 -10 -10 -10 -10 -10 -10 -11 -11 -12 -13 -14 -14 -14 -14 -15 -15 -16 -17 -17 -17 -18 -18 -17 -16 -15 -15 -15 -15 -15 -16 -16 -15 -14 -13 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -11 -12 -12 -12 -11 -9 -8 -8 -9 -9 -10 -10 -9 -8 -7 -7 -7 -8 -7 -7 -6 -5 -4 -4 -4 -4 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -4 -5 -5 -6 -6 -6 -6 -6 -6 -5 -5 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 1 0 -3 -7 -7 -6 -4 -6 -6 -3 2 3 1 -4 -8 -11 -10 -7 -3 -1 -2 -3 -5 -6 -8 -11 -12 -11 -8 -4 -2 -2 -3 -4 -5 -6 -7 -8 -9 -9 -11 -16 -22 -25 -22 -16 -10 -11 -16 -18 -16 -11 -6 -2 1 3 4 4 2 -2 -4 -4 -1 4 8 10 9 8 7 5 3 1 -1 -2 -4 -5 -6 -5 -4 -4 -5 -6 -6 -6 -5 -4 -4 -4 -6 -9 -10 -12 -13 -12 -11 -9 -7 -7 -9 -12 -15 -17 -17 -13 -6 3 8 6 1 -4 -8 -8 -7 -8 -9 -11 -12 -12 -12 -12 -12 -11 -6 -1 1 1 -1 -3 -5 -7 -9 -10 -9 -7 -4 -1 1 0 -3 -6 -10 -10 -8 -6 -4 -4 -6 -8 -7 -5 -3 -2 -3 -5 -6 -5 -4 -3 -5 -7 -8 -8 -7 -6 -7 -8 -10 -11 -11 -11 -10 -10 -10 -10 -11 -13 -14 -14 -13 -13 -13 -13 -14 -14 -14 -14 -14 -14 -15 -14 -13 -13 -13 -14 -16 -17 -16 -15 -13 -14 -15 -16 -16 -17 -16 -16 -16 -16 -17 -17 -16 -15 -14 -13 -14 -15 -15 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -13 -12 -12 -12 -12 -12 -13 -12 -12 -12 -11 -11 -10 -9 -9 -9 -9 -9 -9 -10 -10 -10 -11 -11 -11 -11 -11 -12 -12 -12 -12 -12 -11 -10 -9 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -9 -10 -10 -10 -10 -10 -10 -10 -11 -12 -13 -14 -14 -14 -14 -14 -15 -15 -16 -17 -17 -17 -17 -17 -16 -15 -14 -14 -14 -14 -15 -15 -16 -15 -15 -13 -12 -11 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -11 -11 -11 -10 -9 -8 -8 -8 -9 -10 -11 -10 -9 -8 -7 -8 -9 -9 -8 -7 -6 -5 -5 -5 -4 -4 -4 -4 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -4 -4 -5 -5 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 3 7 4 -1 -4 -4 -5 -10 -14 -14 -10 -4 0 -1 -4 -9 -13 -13 -7 -1 1 -1 -3 -4 -5 -7 -9 -10 -9 -7 -4 -4 -4 -4 -5 -5 -7 -8 -9 -10 -11 -15 -21 -24 -24 -19 -12 -8 -11 -14 -15 -14 -11 -8 -5 -1 3 5 5 1 -2 -3 -1 4 8 10 11 10 8 6 4 1 -1 -4 -6 -7 -8 -7 -6 -5 -5 -5 -6 -6 -5 -4 -4 -4 -6 -9 -11 -13 -14 -14 -14 -12 -10 -7 -7 -9 -13 -16 -17 -14 -8 0 5 4 0 -5 -8 -9 -9 -10 -10 -10 -10 -10 -11 -13 -15 -14 -10 -4 1 1 -0 -2 -4 -6 -9 -10 -10 -9 -5 -2 1 1 -1 -5 -8 -9 -8 -7 -6 -5 -5 -5 -4 -3 -3 -4 -5 -6 -5 -5 -5 -5 -7 -8 -8 -7 -6 -6 -8 -10 -11 -12 -12 -11 -10 -10 -10 -11 -12 -13 -13 -13 -12 -12 -13 -14 -14 -15 -15 -15 -15 -15 -15 -15 -14 -14 -14 -15 -16 -16 -16 -14 -14 -15 -16 -17 -17 -17 -16 -16 -16 -17 -17 -17 -16 -15 -14 -14 -14 -15 -16 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -15 -15 -14 -13 -12 -12 -13 -13 -13 -13 -13 -12 -11 -11 -10 -10 -9 -10 -10 -10 -10 -10 -10 -10 -10 -11 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -10 -10 -11 -11 -11 -11 -11 -11 -12 -14 -15 -15 -15 -15 -15 -15 -16 -16 -17 -17 -17 -17 -16 -16 -15 -14 -13 -13 -14 -15 -15 -16 -16 -15 -13 -12 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -9 -9 -8 -9 -10 -11 -11 -11 -10 -8 -8 -8 -9 -10 -9 -8 -6 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -1 -1 -1 -1 -1 -1 -2 -2 -3 -4 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -2 9 11 8 4 1 -2 -8 -13 -16 -16 -12 -7 -3 -2 -7 -13 -16 -12 -4 0 0 -3 -4 -4 -5 -6 -7 -8 -8 -6 -5 -5 -5 -5 -5 -6 -7 -8 -10 -11 -13 -18 -23 -24 -21 -15 -8 -7 -10 -12 -13 -12 -11 -9 -6 -2 2 5 3 1 -1 1 4 8 11 12 12 10 8 5 1 -2 -4 -6 -8 -9 -9 -8 -6 -5 -5 -5 -5 -5 -5 -4 -4 -5 -8 -11 -14 -15 -15 -16 -15 -12 -8 -5 -6 -10 -13 -15 -13 -9 -4 1 2 -1 -5 -9 -11 -11 -11 -10 -8 -7 -7 -10 -13 -16 -16 -13 -7 -2 0 -0 -2 -4 -5 -7 -8 -9 -8 -6 -4 -2 -1 -2 -3 -5 -7 -9 -9 -9 -8 -6 -5 -3 -3 -4 -5 -6 -6 -6 -6 -6 -7 -7 -7 -6 -6 -6 -8 -10 -11 -12 -12 -11 -11 -10 -10 -10 -11 -13 -13 -13 -12 -12 -12 -13 -14 -14 -14 -15 -15 -16 -16 -16 -16 -15 -15 -15 -16 -16 -16 -16 -15 -15 -16 -17 -18 -17 -17 -16 -15 -16 -16 -16 -16 -16 -15 -14 -14 -14 -15 -16 -16 -16 -15 -15 -14 -14 -14 -15 -16 -16 -15 -15 -14 -14 -15 -15 -15 -14 -13 -12 -13 -13 -14 -14 -13 -13 -12 -12 -11 -10 -10 -10 -11 -11 -11 -11 -11 -11 -10 -10 -11 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -9 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -9 -10 -11 -11 -12 -12 -12 -12 -13 -14 -15 -15 -16 -15 -15 -15 -16 -16 -16 -16 -16 -16 -16 -16 -15 -15 -14 -13 -13 -14 -15 -16 -16 -16 -15 -13 -12 -12 -12 -12 -11 -11 -11 -10 -11 -11 -11 -11 -11 -11 -10 -10 -10 -9 -9 -10 -11 -12 -12 -12 -10 -9 -8 -8 -9 -10 -10 -9 -7 -6 -6 -6 -6 -5 -4 -4 -3 -3 -4 -4 -4 -3 -3 -3 -3 -2 -2 -3 -3 -3 -3 -3 -2 -2 -1 -1 -1 -0 -0 -0 -0 -1 -2 -3 -3 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -10 1 10 10 6 1 -2 -5 -9 -13 -15 -15 -13 -8 -5 -6 -11 -16 -16 -8 -2 0 -1 -3 -5 -5 -5 -6 -6 -7 -7 -7 -7 -7 -6 -6 -6 -6 -8 -9 -10 -12 -16 -21 -23 -22 -17 -10 -6 -7 -10 -11 -10 -9 -10 -10 -7 -3 1 3 2 1 2 5 9 12 13 13 12 10 7 2 -1 -4 -6 -8 -9 -10 -10 -9 -7 -5 -4 -4 -4 -4 -4 -4 -6 -8 -11 -14 -16 -16 -17 -16 -13 -8 -4 -3 -7 -11 -12 -12 -11 -8 -4 -1 -1 -5 -9 -13 -13 -12 -9 -6 -4 -6 -10 -14 -16 -16 -13 -9 -5 -2 -2 -3 -4 -4 -5 -6 -6 -6 -6 -6 -6 -5 -4 -4 -4 -6 -8 -10 -10 -10 -8 -6 -4 -3 -4 -5 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -9 -10 -11 -11 -11 -11 -11 -11 -10 -10 -11 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -15 -16 -16 -16 -16 -16 -15 -15 -16 -16 -16 -16 -16 -16 -17 -18 -18 -18 -16 -15 -15 -15 -15 -16 -16 -16 -15 -14 -13 -13 -14 -16 -17 -17 -16 -14 -13 -14 -16 -17 -18 -17 -16 -15 -15 -15 -15 -15 -14 -13 -12 -12 -13 -13 -14 -14 -14 -13 -13 -12 -11 -11 -11 -12 -12 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -10 -10 -10 -9 -9 -8 -8 -8 -8 -8 -8 -9 -9 -10 -11 -12 -12 -13 -13 -14 -14 -15 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -15 -16 -15 -15 -14 -14 -14 -14 -15 -16 -17 -16 -15 -13 -13 -13 -13 -13 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -12 -13 -13 -13 -11 -9 -8 -8 -9 -10 -10 -10 -8 -7 -7 -7 -7 -6 -6 -5 -4 -4 -3 -3 -3 -3 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -1 -1 -0 -0 0 0 0 -1 -1 -2 -3 -3 -3 -3 -4 -4 -4 -4 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -1 -1 -1 -1 -0 0 0 1 1 1 -12 -8 1 5 4 -0 -3 -3 -5 -8 -12 -14 -15 -13 -10 -9 -11 -15 -17 -12 -5 0 2 -0 -4 -6 -6 -5 -5 -5 -7 -8 -9 -9 -8 -7 -6 -6 -7 -8 -10 -11 -14 -18 -21 -22 -19 -13 -7 -6 -9 -10 -9 -7 -7 -9 -10 -9 -5 -2 0 2 3 6 9 12 14 15 14 12 9 4 0 -3 -5 -6 -8 -10 -11 -11 -10 -8 -6 -4 -3 -2 -3 -4 -6 -9 -11 -12 -13 -13 -16 -16 -14 -9 -4 -2 -5 -8 -10 -12 -12 -11 -8 -4 -2 -4 -9 -14 -15 -12 -7 -3 -1 -4 -9 -13 -14 -14 -12 -11 -9 -6 -4 -3 -4 -4 -4 -4 -4 -5 -6 -7 -8 -8 -8 -7 -7 -7 -8 -9 -9 -9 -8 -6 -5 -4 -4 -5 -6 -7 -7 -6 -6 -6 -7 -8 -9 -10 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -15 -16 -16 -16 -16 -15 -15 -16 -17 -17 -17 -17 -17 -18 -18 -18 -17 -16 -15 -14 -14 -15 -15 -16 -16 -15 -14 -13 -13 -14 -16 -17 -17 -15 -14 -14 -16 -18 -19 -18 -16 -15 -15 -15 -16 -15 -15 -13 -12 -12 -12 -13 -13 -14 -14 -14 -13 -13 -12 -12 -12 -13 -13 -13 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -11 -11 -11 -11 -11 -11 -10 -10 -9 -9 -8 -8 -8 -8 -8 -9 -9 -10 -11 -12 -13 -14 -14 -15 -16 -16 -17 -17 -17 -16 -16 -16 -16 -16 -16 -16 -15 -15 -16 -16 -15 -15 -14 -14 -14 -15 -17 -17 -17 -16 -14 -13 -13 -13 -13 -13 -13 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -13 -13 -14 -13 -12 -10 -8 -8 -9 -10 -11 -10 -9 -8 -8 -8 -8 -8 -7 -7 -6 -5 -4 -4 -3 -3 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -2 -2 -1 -0 0 1 1 0 -1 -1 -2 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -1 -1 -0 0 1 1 2 2 3 3 4 4 5 -13 -13 -9 -4 -1 -2 -3 -2 -1 -3 -7 -11 -14 -15 -14 -13 -13 -15 -18 -16 -8 -0 4 3 -2 -6 -7 -7 -5 -5 -6 -8 -9 -10 -10 -10 -8 -6 -6 -7 -9 -10 -11 -15 -18 -20 -20 -16 -10 -8 -9 -11 -11 -8 -6 -7 -9 -11 -10 -7 -4 -1 3 6 10 12 14 15 15 14 11 7 3 -1 -3 -5 -6 -8 -10 -11 -12 -13 -11 -8 -5 -3 -2 -3 -7 -12 -15 -17 -18 -17 -16 -16 -13 -10 -5 -2 -3 -6 -8 -10 -12 -14 -11 -8 -5 -6 -9 -14 -15 -11 -5 1 2 -3 -8 -11 -12 -11 -11 -12 -12 -10 -8 -5 -4 -4 -4 -3 -3 -3 -5 -7 -8 -10 -11 -12 -12 -10 -8 -6 -6 -6 -6 -6 -5 -5 -5 -5 -6 -6 -6 -5 -6 -7 -8 -10 -11 -12 -12 -12 -12 -11 -11 -12 -12 -12 -12 -12 -13 -13 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -15 -16 -16 -16 -16 -15 -15 -16 -17 -17 -17 -17 -17 -17 -18 -17 -16 -15 -14 -14 -14 -15 -15 -16 -16 -15 -13 -13 -13 -15 -17 -17 -16 -15 -15 -17 -19 -20 -19 -17 -16 -15 -16 -16 -16 -15 -13 -11 -11 -11 -12 -13 -14 -14 -14 -14 -13 -13 -13 -13 -13 -14 -14 -14 -13 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -12 -11 -11 -11 -11 -12 -12 -12 -11 -11 -10 -9 -9 -8 -8 -9 -9 -9 -10 -10 -11 -12 -13 -15 -16 -16 -17 -18 -18 -18 -17 -17 -17 -17 -17 -16 -16 -16 -16 -16 -16 -16 -15 -15 -14 -15 -16 -17 -18 -18 -17 -15 -13 -13 -13 -14 -14 -13 -13 -13 -12 -12 -12 -12 -12 -12 -13 -13 -13 -13 -13 -13 -14 -14 -13 -12 -10 -9 -8 -9 -10 -11 -10 -9 -8 -8 -9 -9 -9 -9 -8 -8 -7 -6 -5 -5 -4 -4 -4 -4 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -3 -3 -2 -1 -1 0 0 0 -0 -1 -1 -2 -2 -2 -2 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -1 -1 -0 1 2 3 3 4 5 6 7 7 8 -14 -15 -14 -11 -8 -6 -6 -4 -0 -0 -3 -7 -10 -12 -14 -15 -15 -17 -20 -19 -12 -2 5 6 0 -6 -8 -8 -7 -6 -6 -7 -9 -11 -11 -11 -10 -8 -7 -7 -8 -9 -10 -12 -15 -18 -20 -19 -14 -9 -8 -10 -12 -12 -10 -8 -8 -9 -9 -9 -7 -5 -0 5 9 12 13 14 15 15 13 10 6 2 -1 -3 -5 -6 -7 -9 -12 -14 -16 -14 -11 -7 -4 -3 -6 -11 -16 -21 -22 -19 -17 -16 -13 -10 -6 -3 -3 -4 -6 -9 -12 -14 -14 -12 -10 -9 -11 -14 -13 -8 -2 3 2 -3 -8 -9 -9 -9 -10 -12 -13 -12 -11 -9 -7 -5 -4 -4 -4 -4 -4 -6 -7 -10 -13 -15 -17 -14 -9 -5 -2 -2 -3 -5 -6 -7 -7 -6 -6 -5 -5 -5 -7 -9 -11 -12 -13 -13 -13 -13 -12 -11 -12 -12 -12 -13 -13 -13 -14 -14 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -15 -15 -16 -15 -15 -15 -15 -16 -17 -17 -17 -16 -16 -16 -17 -16 -15 -14 -14 -14 -15 -15 -16 -16 -15 -14 -13 -13 -14 -16 -17 -17 -16 -16 -18 -20 -20 -19 -17 -16 -15 -16 -16 -16 -14 -13 -11 -10 -10 -11 -12 -13 -14 -14 -14 -14 -13 -13 -13 -14 -15 -15 -15 -14 -13 -13 -13 -13 -14 -14 -13 -14 -14 -14 -13 -12 -11 -11 -11 -12 -13 -13 -13 -12 -11 -11 -10 -9 -9 -9 -9 -9 -10 -10 -11 -11 -12 -14 -15 -17 -18 -19 -19 -19 -18 -18 -18 -18 -18 -17 -16 -16 -16 -17 -17 -16 -15 -15 -15 -15 -16 -17 -18 -18 -17 -15 -14 -13 -13 -14 -14 -14 -13 -13 -13 -13 -13 -13 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -12 -11 -10 -9 -9 -10 -11 -11 -11 -9 -8 -9 -10 -10 -10 -10 -9 -9 -9 -8 -7 -6 -6 -5 -4 -4 -4 -5 -5 -5 -6 -6 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -3 -2 -2 -1 -0 -0 -0 -1 -1 -1 -2 -2 -2 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -1 -1 -0 0 1 2 4 5 6 7 8 9 10 -16 -16 -16 -15 -13 -12 -11 -9 -4 -1 -2 -5 -7 -8 -10 -13 -16 -18 -20 -19 -14 -6 2 5 2 -5 -9 -10 -8 -7 -6 -7 -9 -10 -11 -12 -12 -10 -9 -8 -8 -8 -9 -10 -12 -15 -19 -20 -17 -11 -8 -8 -12 -15 -14 -12 -9 -7 -7 -7 -8 -8 -4 1 7 11 12 13 13 14 14 12 9 5 2 -1 -3 -4 -5 -7 -10 -13 -17 -18 -17 -14 -9 -6 -6 -9 -15 -20 -22 -20 -18 -16 -14 -11 -7 -4 -2 -2 -4 -7 -10 -14 -15 -15 -13 -13 -14 -14 -11 -5 0 3 0 -5 -7 -7 -7 -7 -9 -11 -12 -13 -12 -12 -10 -8 -6 -5 -5 -5 -5 -5 -6 -9 -12 -16 -17 -15 -10 -5 -0 1 -1 -5 -8 -10 -9 -7 -4 -3 -4 -7 -10 -12 -12 -13 -14 -14 -13 -13 -12 -12 -12 -12 -13 -13 -14 -14 -14 -14 -14 -14 -14 -13 -14 -14 -14 -14 -14 -14 -14 -14 -15 -15 -15 -14 -14 -14 -15 -17 -17 -17 -16 -15 -15 -15 -15 -14 -13 -13 -14 -15 -15 -16 -16 -16 -15 -14 -14 -14 -15 -17 -17 -17 -17 -19 -21 -22 -20 -18 -16 -15 -15 -16 -16 -14 -13 -11 -10 -10 -11 -12 -13 -13 -14 -14 -13 -13 -13 -13 -14 -15 -16 -16 -15 -13 -13 -13 -14 -14 -14 -14 -14 -15 -15 -15 -14 -12 -11 -11 -12 -13 -14 -14 -13 -13 -12 -11 -11 -10 -10 -10 -10 -10 -10 -11 -11 -12 -13 -15 -16 -18 -19 -20 -20 -19 -19 -19 -19 -19 -19 -17 -17 -17 -17 -18 -17 -16 -16 -16 -16 -17 -18 -19 -19 -17 -15 -14 -13 -13 -14 -14 -14 -14 -13 -13 -13 -13 -13 -13 -13 -12 -12 -12 -12 -12 -12 -12 -12 -11 -10 -9 -9 -9 -10 -11 -11 -11 -10 -9 -9 -10 -11 -11 -10 -10 -10 -10 -9 -9 -8 -8 -7 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -3 -2 -2 -1 -1 -1 -1 -2 -2 -2 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -1 -1 -1 -0 1 2 3 4 6 7 8 10 11 -18 -18 -17 -15 -14 -13 -15 -16 -12 -6 -4 -4 -6 -6 -7 -9 -12 -15 -18 -19 -17 -11 -3 2 3 -3 -8 -11 -10 -8 -7 -7 -8 -10 -11 -12 -12 -12 -11 -10 -9 -9 -8 -8 -10 -12 -16 -20 -19 -14 -9 -7 -9 -14 -17 -16 -12 -8 -5 -6 -8 -9 -7 -3 4 9 12 12 12 12 12 12 11 8 5 2 -0 -1 -2 -4 -7 -10 -15 -19 -20 -19 -16 -12 -9 -9 -13 -17 -20 -19 -18 -17 -15 -13 -9 -5 -2 -1 -2 -4 -8 -12 -15 -16 -15 -15 -15 -14 -10 -4 0 1 -3 -7 -8 -6 -5 -5 -7 -10 -11 -11 -12 -12 -12 -10 -8 -7 -6 -6 -6 -6 -6 -7 -10 -13 -14 -12 -8 -4 -1 -1 -4 -7 -9 -10 -8 -5 -3 -4 -6 -10 -12 -13 -13 -14 -14 -14 -14 -13 -13 -12 -13 -13 -14 -14 -15 -15 -15 -15 -14 -14 -14 -14 -14 -15 -15 -14 -14 -14 -14 -14 -14 -14 -14 -13 -13 -14 -15 -17 -18 -17 -16 -15 -14 -13 -13 -13 -13 -13 -15 -16 -16 -16 -16 -16 -15 -14 -14 -15 -17 -17 -17 -18 -20 -22 -23 -21 -19 -16 -15 -15 -16 -16 -15 -13 -11 -10 -11 -12 -13 -13 -13 -14 -14 -13 -13 -13 -13 -14 -15 -16 -16 -15 -14 -14 -14 -14 -15 -15 -16 -15 -16 -16 -16 -15 -13 -12 -12 -12 -13 -14 -15 -14 -14 -13 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -12 -13 -14 -16 -17 -19 -20 -21 -20 -19 -19 -20 -20 -20 -19 -18 -18 -18 -19 -18 -17 -17 -17 -18 -19 -20 -20 -20 -18 -16 -14 -14 -14 -14 -14 -14 -14 -14 -13 -13 -13 -13 -13 -13 -12 -12 -11 -11 -11 -11 -11 -11 -10 -9 -9 -8 -9 -10 -11 -11 -11 -10 -9 -9 -10 -11 -11 -10 -10 -10 -10 -10 -10 -9 -9 -9 -8 -8 -7 -6 -6 -5 -5 -5 -5 -5 -5 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -3 -3 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -1 -1 -1 -1 -0 1 2 3 4 6 7 9 10 -19 -19 -18 -15 -11 -10 -12 -17 -19 -14 -8 -4 -6 -9 -9 -8 -8 -10 -13 -16 -17 -13 -7 -1 3 -0 -7 -11 -12 -10 -7 -7 -8 -10 -11 -11 -12 -12 -11 -11 -10 -10 -9 -8 -8 -10 -13 -18 -20 -18 -12 -7 -7 -12 -17 -18 -16 -11 -6 -5 -8 -10 -9 -6 -1 5 10 12 11 11 10 10 10 9 7 5 3 1 0 -1 -4 -7 -11 -15 -18 -20 -20 -18 -14 -12 -13 -15 -17 -17 -17 -17 -17 -15 -13 -9 -4 -0 0 -2 -6 -10 -13 -15 -16 -16 -16 -15 -10 -5 -2 -2 -6 -9 -9 -7 -5 -4 -6 -8 -9 -9 -10 -11 -12 -11 -10 -9 -8 -7 -7 -7 -6 -6 -7 -9 -9 -7 -5 -4 -4 -6 -7 -9 -9 -8 -6 -4 -4 -6 -9 -12 -13 -14 -14 -14 -14 -14 -14 -13 -13 -13 -13 -14 -15 -15 -15 -15 -15 -15 -14 -14 -14 -15 -15 -15 -15 -14 -14 -14 -14 -14 -14 -14 -13 -13 -13 -13 -15 -17 -18 -18 -16 -14 -13 -12 -12 -12 -13 -15 -16 -16 -17 -16 -16 -16 -15 -15 -16 -17 -17 -17 -18 -20 -22 -24 -23 -19 -17 -15 -15 -16 -16 -15 -14 -12 -11 -11 -12 -13 -13 -13 -14 -14 -14 -13 -13 -13 -14 -14 -15 -16 -16 -15 -14 -14 -15 -15 -16 -16 -17 -17 -17 -16 -16 -14 -13 -12 -12 -13 -14 -15 -15 -14 -14 -13 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -13 -13 -15 -17 -18 -20 -21 -21 -20 -20 -20 -21 -21 -20 -19 -19 -19 -20 -20 -19 -18 -18 -19 -21 -22 -22 -21 -19 -17 -15 -15 -15 -15 -15 -14 -14 -14 -14 -14 -14 -13 -13 -13 -12 -12 -11 -11 -11 -10 -10 -10 -10 -9 -9 -9 -9 -10 -11 -11 -10 -9 -9 -10 -10 -11 -11 -10 -9 -10 -10 -11 -10 -10 -9 -9 -9 -9 -9 -8 -8 -7 -6 -6 -5 -5 -5 -5 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -3 -3 -3 -2 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -1 -1 -1 -1 -0 1 2 3 4 6 7 9 -19 -21 -21 -18 -12 -7 -7 -12 -18 -17 -11 -5 -4 -8 -11 -10 -8 -7 -8 -11 -14 -14 -10 -3 3 1 -5 -11 -13 -12 -8 -7 -8 -9 -10 -11 -11 -11 -11 -12 -11 -11 -10 -9 -8 -8 -11 -15 -19 -20 -16 -10 -6 -9 -16 -19 -18 -14 -9 -6 -8 -9 -10 -9 -6 -0 6 10 11 10 8 8 7 7 6 5 4 3 3 1 -2 -5 -8 -10 -11 -13 -16 -19 -19 -17 -16 -16 -16 -15 -15 -17 -18 -18 -17 -14 -8 -3 0 -0 -4 -8 -11 -14 -16 -17 -18 -16 -12 -8 -5 -5 -7 -9 -9 -7 -5 -4 -5 -6 -6 -7 -8 -9 -10 -10 -10 -9 -8 -7 -7 -7 -6 -6 -5 -5 -4 -4 -5 -7 -9 -10 -10 -9 -7 -5 -3 -3 -6 -9 -11 -13 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -15 -15 -16 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -14 -14 -14 -14 -14 -14 -13 -13 -12 -12 -13 -15 -17 -18 -18 -16 -14 -12 -12 -12 -14 -15 -17 -17 -17 -17 -17 -16 -16 -16 -16 -17 -18 -18 -18 -20 -23 -24 -24 -20 -17 -15 -15 -16 -17 -16 -15 -13 -12 -12 -13 -14 -14 -14 -14 -14 -14 -14 -13 -13 -14 -14 -14 -15 -15 -15 -14 -14 -15 -15 -16 -17 -17 -17 -17 -17 -16 -15 -14 -13 -13 -14 -15 -15 -15 -14 -14 -13 -13 -12 -12 -12 -12 -12 -13 -13 -13 -13 -13 -13 -14 -16 -17 -19 -20 -20 -20 -20 -20 -21 -21 -20 -20 -20 -20 -21 -21 -19 -18 -18 -20 -22 -24 -25 -23 -21 -18 -17 -16 -16 -16 -16 -15 -14 -14 -14 -14 -14 -14 -13 -13 -12 -12 -12 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -11 -11 -10 -10 -9 -9 -10 -10 -11 -11 -10 -9 -9 -10 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -9 -8 -7 -7 -6 -6 -6 -6 -6 -6 -6 -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 -3 -3 -2 -2 -2 -2 -1 -1 -1 -1 -0 1 2 3 4 6 7 -16 -19 -22 -22 -17 -11 -6 -8 -15 -18 -15 -9 -4 -6 -11 -12 -10 -8 -7 -8 -11 -13 -11 -6 1 2 -3 -10 -14 -13 -9 -7 -7 -8 -10 -10 -10 -10 -11 -11 -12 -12 -12 -11 -9 -8 -9 -12 -16 -20 -19 -14 -9 -8 -13 -18 -19 -17 -12 -9 -8 -9 -9 -9 -8 -6 -0 6 10 11 9 7 5 4 3 3 3 3 3 2 -0 -3 -5 -7 -5 -2 -2 -8 -16 -19 -20 -20 -18 -14 -13 -15 -17 -19 -20 -19 -14 -7 -3 -1 -2 -6 -11 -15 -18 -20 -20 -19 -16 -12 -9 -7 -7 -8 -9 -8 -6 -5 -4 -5 -5 -5 -5 -6 -7 -8 -8 -8 -7 -6 -6 -6 -6 -5 -4 -2 -2 -4 -7 -10 -12 -13 -11 -8 -5 -3 -3 -5 -9 -11 -13 -14 -14 -15 -15 -15 -15 -14 -14 -14 -14 -14 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -14 -14 -14 -14 -14 -13 -13 -12 -12 -12 -13 -15 -17 -18 -17 -15 -13 -12 -12 -13 -16 -18 -19 -18 -18 -17 -17 -16 -16 -17 -18 -18 -19 -19 -20 -22 -24 -24 -21 -18 -16 -15 -16 -17 -17 -16 -15 -13 -13 -14 -16 -15 -15 -14 -14 -14 -14 -13 -13 -13 -14 -14 -14 -14 -14 -14 -14 -15 -15 -16 -17 -17 -18 -18 -17 -17 -16 -14 -13 -14 -15 -15 -16 -15 -14 -13 -13 -12 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -15 -16 -18 -19 -20 -20 -20 -21 -21 -21 -20 -20 -20 -20 -21 -21 -20 -19 -18 -19 -22 -25 -26 -25 -23 -20 -18 -18 -18 -18 -17 -16 -15 -14 -14 -14 -14 -14 -13 -13 -12 -12 -12 -11 -11 -11 -11 -11 -10 -10 -10 -10 -11 -11 -11 -10 -10 -9 -9 -10 -11 -11 -11 -10 -9 -9 -10 -11 -11 -10 -10 -10 -10 -11 -11 -11 -11 -11 -10 -10 -9 -8 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -1 -1 0 1 2 3 4 6 -11 -16 -21 -23 -20 -14 -7 -7 -13 -18 -18 -14 -8 -5 -8 -11 -11 -9 -7 -7 -10 -13 -13 -8 -1 3 -2 -9 -14 -14 -11 -8 -7 -8 -9 -10 -9 -9 -9 -10 -11 -12 -13 -12 -11 -9 -8 -9 -12 -17 -20 -19 -14 -9 -10 -14 -18 -18 -15 -11 -9 -9 -9 -9 -9 -9 -6 -0 5 9 10 9 7 5 3 2 1 1 1 1 -1 -3 -3 -0 2 3 4 2 -3 -9 -15 -18 -19 -17 -15 -15 -16 -18 -20 -21 -18 -12 -7 -4 -4 -7 -11 -15 -19 -21 -22 -21 -18 -15 -11 -9 -7 -7 -7 -7 -5 -5 -4 -5 -5 -5 -5 -4 -5 -5 -5 -6 -6 -6 -7 -7 -6 -5 -3 -2 -3 -6 -10 -13 -14 -12 -9 -6 -3 -2 -4 -8 -11 -13 -14 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -15 -16 -16 -16 -15 -15 -15 -15 -15 -15 -16 -16 -16 -15 -15 -14 -14 -14 -14 -14 -14 -13 -13 -12 -12 -12 -13 -15 -16 -17 -16 -15 -13 -13 -13 -15 -18 -20 -20 -19 -18 -18 -17 -17 -17 -18 -19 -19 -20 -21 -22 -24 -24 -22 -19 -17 -16 -17 -17 -18 -17 -17 -16 -15 -16 -16 -16 -15 -15 -14 -14 -14 -14 -13 -13 -13 -13 -13 -14 -14 -14 -14 -15 -15 -16 -17 -17 -18 -18 -18 -17 -16 -15 -14 -14 -15 -16 -17 -16 -15 -13 -12 -12 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -15 -16 -18 -19 -20 -20 -20 -21 -21 -21 -20 -20 -20 -21 -22 -21 -20 -19 -19 -21 -24 -26 -26 -24 -21 -20 -20 -20 -20 -19 -18 -16 -15 -15 -15 -15 -14 -13 -13 -12 -12 -12 -12 -12 -12 -11 -11 -11 -10 -10 -11 -11 -11 -11 -11 -10 -10 -10 -10 -11 -11 -11 -10 -9 -9 -10 -11 -11 -11 -10 -10 -10 -10 -11 -11 -11 -12 -12 -11 -11 -10 -10 -9 -8 -7 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -1 -1 -0 0 1 2 3 4 -5 -11 -18 -22 -21 -16 -9 -6 -11 -17 -20 -18 -13 -7 -6 -8 -10 -10 -8 -7 -9 -12 -13 -10 -3 3 0 -7 -13 -15 -13 -10 -8 -7 -8 -9 -9 -8 -8 -8 -9 -11 -12 -13 -13 -11 -9 -8 -9 -13 -18 -21 -20 -14 -10 -11 -14 -16 -16 -13 -11 -10 -9 -9 -9 -9 -9 -6 -2 3 8 9 9 7 5 3 1 -0 -1 -1 -2 -2 -2 -2 -2 -2 -3 -5 -4 -4 -6 -10 -13 -16 -15 -15 -15 -16 -17 -19 -18 -16 -12 -9 -7 -8 -11 -14 -17 -19 -20 -20 -19 -17 -14 -12 -10 -9 -7 -5 -4 -3 -3 -4 -5 -6 -6 -5 -4 -3 -2 -3 -5 -8 -10 -10 -8 -6 -4 -4 -6 -9 -12 -13 -12 -10 -7 -4 -3 -5 -8 -12 -13 -14 -15 -15 -16 -16 -15 -15 -15 -15 -15 -16 -16 -16 -16 -16 -16 -15 -15 -15 -16 -16 -16 -16 -16 -16 -15 -15 -14 -14 -14 -14 -13 -13 -13 -13 -12 -12 -12 -13 -14 -15 -15 -15 -14 -14 -14 -15 -17 -19 -21 -21 -20 -19 -18 -18 -18 -19 -20 -20 -21 -21 -23 -24 -24 -23 -20 -18 -18 -18 -18 -19 -19 -19 -18 -18 -17 -17 -17 -16 -15 -15 -15 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -15 -16 -17 -18 -18 -18 -18 -18 -17 -16 -16 -16 -16 -17 -17 -17 -16 -14 -12 -12 -12 -12 -13 -14 -14 -14 -14 -14 -13 -13 -13 -13 -13 -14 -15 -17 -18 -19 -19 -20 -21 -21 -21 -20 -20 -20 -21 -22 -21 -20 -19 -19 -20 -23 -25 -25 -24 -22 -21 -22 -23 -23 -22 -20 -18 -17 -17 -17 -17 -16 -15 -14 -13 -13 -13 -13 -13 -12 -12 -12 -11 -11 -11 -10 -11 -11 -11 -10 -10 -10 -11 -11 -11 -11 -11 -10 -9 -9 -10 -11 -11 -11 -10 -10 -10 -10 -10 -11 -11 -11 -12 -12 -12 -12 -12 -11 -10 -9 -8 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -3 -3 -3 -2 -2 -2 -1 -1 -2 -2 -2 -2 -2 -2 -2 -1 -1 -1 -0 0 1 2 3 1 -4 -13 -19 -21 -17 -11 -5 -7 -14 -18 -20 -17 -12 -7 -6 -8 -9 -8 -7 -8 -11 -14 -13 -7 1 2 -4 -11 -15 -15 -13 -10 -9 -8 -8 -8 -8 -8 -8 -8 -9 -11 -12 -13 -13 -11 -9 -9 -11 -16 -21 -23 -20 -13 -10 -11 -13 -15 -15 -13 -11 -9 -9 -10 -10 -10 -9 -7 -3 1 5 8 8 7 5 3 1 -1 -2 -2 -1 -1 -4 -5 -4 -5 -7 -7 -7 -7 -6 -8 -12 -13 -13 -12 -12 -13 -15 -16 -16 -14 -12 -10 -9 -10 -11 -13 -15 -17 -18 -19 -18 -18 -16 -15 -13 -9 -6 -3 -1 -1 -2 -4 -6 -7 -7 -5 -2 -1 -1 -4 -8 -12 -12 -10 -6 -3 -4 -8 -11 -12 -11 -9 -7 -5 -4 -6 -9 -12 -14 -15 -15 -16 -16 -16 -16 -16 -15 -15 -15 -16 -16 -17 -17 -17 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -15 -15 -14 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -15 -15 -14 -14 -14 -14 -16 -17 -19 -21 -21 -20 -19 -18 -18 -19 -20 -21 -22 -22 -23 -25 -25 -24 -22 -19 -19 -19 -19 -20 -20 -20 -21 -20 -19 -17 -17 -16 -16 -16 -16 -15 -14 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -15 -16 -17 -18 -19 -19 -19 -18 -18 -18 -18 -18 -18 -18 -18 -17 -16 -15 -13 -12 -12 -12 -13 -14 -15 -15 -15 -14 -14 -13 -13 -13 -13 -13 -14 -16 -17 -18 -19 -19 -20 -21 -21 -20 -20 -20 -21 -22 -21 -20 -19 -19 -20 -22 -23 -23 -22 -21 -20 -22 -24 -25 -24 -22 -20 -20 -19 -19 -20 -19 -17 -16 -14 -14 -14 -14 -14 -13 -13 -13 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -12 -12 -12 -11 -10 -10 -11 -11 -11 -11 -10 -10 -10 -10 -11 -11 -11 -11 -12 -12 -12 -12 -13 -13 -12 -12 -10 -9 -8 -7 -7 -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 -1 -1 -1 -1 -2 -1 -1 -1 -1 -1 -1 -0 0 1 2 4 1 -7 -14 -18 -18 -14 -7 -4 -7 -13 -17 -19 -17 -11 -7 -6 -7 -8 -6 -6 -9 -13 -15 -11 -3 1 -1 -7 -13 -15 -14 -12 -11 -10 -9 -7 -7 -7 -7 -7 -7 -8 -10 -12 -13 -13 -11 -10 -10 -14 -19 -23 -24 -19 -12 -9 -9 -13 -15 -14 -12 -10 -10 -10 -11 -11 -11 -10 -8 -5 -2 2 5 7 7 6 3 1 -1 -1 -2 -4 -6 -6 -6 -7 -7 -8 -9 -8 -7 -5 -8 -9 -10 -9 -9 -9 -10 -11 -12 -13 -12 -11 -9 -9 -9 -11 -12 -14 -16 -18 -19 -20 -19 -18 -15 -12 -8 -5 -2 0 -0 -2 -5 -7 -9 -7 -4 -1 0 -2 -7 -11 -12 -10 -6 -3 -4 -7 -10 -10 -8 -6 -4 -5 -7 -11 -13 -15 -15 -15 -16 -17 -17 -17 -16 -16 -16 -16 -16 -17 -18 -18 -18 -17 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -15 -15 -14 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -15 -15 -16 -17 -19 -20 -20 -20 -19 -19 -20 -21 -22 -23 -23 -24 -25 -26 -25 -23 -21 -20 -20 -21 -20 -20 -20 -21 -22 -20 -18 -17 -16 -17 -17 -17 -16 -15 -14 -14 -14 -14 -13 -13 -13 -13 -13 -14 -15 -16 -18 -19 -19 -20 -19 -19 -19 -20 -20 -20 -20 -20 -19 -18 -17 -16 -14 -13 -13 -13 -14 -15 -16 -16 -16 -15 -15 -14 -14 -13 -13 -13 -14 -15 -16 -17 -18 -19 -19 -20 -20 -20 -20 -20 -21 -22 -22 -21 -20 -19 -19 -21 -22 -23 -22 -20 -20 -20 -23 -24 -24 -23 -22 -22 -21 -22 -22 -22 -21 -18 -16 -16 -16 -16 -16 -15 -14 -14 -14 -13 -13 -12 -12 -12 -11 -11 -11 -11 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -11 -10 -10 -10 -11 -11 -11 -11 -11 -11 -12 -12 -12 -12 -13 -13 -13 -13 -12 -11 -10 -8 -8 -7 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -3 -3 -3 -2 -2 -2 -2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -0 0 1 -0 2 -0 -8 -14 -18 -17 -11 -3 -1 -5 -12 -17 -19 -16 -11 -7 -7 -7 -7 -6 -7 -11 -15 -14 -8 -1 -0 -4 -10 -13 -13 -13 -13 -12 -10 -8 -7 -7 -8 -8 -7 -7 -8 -10 -11 -12 -12 -11 -11 -13 -17 -22 -25 -23 -17 -11 -8 -10 -14 -15 -14 -12 -11 -10 -11 -11 -11 -11 -10 -9 -8 -4 -1 3 6 6 5 3 2 1 -1 -5 -6 -7 -7 -7 -7 -6 -7 -7 -5 -3 -3 -5 -5 -5 -5 -4 -4 -5 -7 -9 -10 -11 -10 -9 -8 -9 -11 -13 -15 -17 -19 -20 -20 -19 -17 -14 -11 -8 -4 -0 1 -0 -3 -6 -9 -9 -6 -2 0 -0 -4 -9 -10 -9 -6 -3 -4 -6 -8 -8 -6 -5 -5 -8 -11 -14 -15 -15 -15 -16 -17 -17 -17 -17 -17 -16 -16 -16 -17 -18 -19 -19 -18 -17 -17 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -15 -14 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -15 -15 -15 -16 -16 -17 -18 -19 -19 -20 -20 -21 -22 -23 -24 -24 -25 -26 -27 -26 -25 -23 -22 -22 -23 -22 -21 -20 -21 -22 -22 -20 -18 -17 -17 -18 -18 -17 -16 -15 -14 -14 -14 -14 -13 -13 -13 -13 -14 -15 -16 -17 -19 -20 -20 -20 -20 -21 -21 -21 -21 -21 -21 -21 -20 -18 -17 -15 -14 -14 -14 -15 -16 -17 -17 -17 -17 -16 -15 -15 -14 -13 -13 -13 -14 -15 -16 -17 -18 -18 -19 -19 -19 -20 -20 -21 -22 -22 -21 -20 -19 -19 -20 -22 -23 -22 -21 -19 -19 -21 -22 -23 -23 -22 -22 -22 -23 -24 -24 -24 -22 -19 -18 -18 -18 -18 -17 -16 -15 -15 -15 -15 -14 -14 -13 -13 -13 -13 -13 -12 -12 -12 -12 -12 -12 -12 -13 -13 -13 -12 -12 -11 -11 -11 -11 -11 -11 -11 -12 -12 -12 -12 -12 -12 -13 -13 -13 -13 -13 -13 -12 -11 -10 -9 -8 -8 -7 -7 -7 -7 -7 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -4 -4 -4 -4 -3 -3 -3 -3 -3 -2 -2 -2 -1 -1 -0 -0 -0 -0 -0 -1 -1 -1 -1 -1 -0 0 -12 -6 -1 -2 -7 -14 -19 -19 -12 -4 -2 -5 -10 -15 -17 -14 -11 -8 -8 -8 -7 -7 -10 -14 -16 -12 -5 -2 -3 -7 -11 -12 -12 -13 -13 -13 -10 -7 -7 -8 -9 -9 -8 -7 -8 -9 -11 -11 -12 -12 -13 -16 -19 -23 -25 -22 -16 -11 -9 -11 -14 -15 -14 -12 -11 -10 -10 -11 -11 -11 -11 -10 -9 -7 -3 1 3 4 5 4 2 -1 -3 -4 -5 -6 -5 -4 -4 -5 -4 -2 1 2 0 -1 -1 -0 1 1 0 -2 -4 -7 -9 -9 -8 -8 -8 -10 -12 -14 -16 -18 -19 -19 -18 -17 -15 -13 -10 -7 -2 1 2 -0 -4 -8 -11 -9 -4 -0 1 -1 -5 -8 -8 -6 -4 -4 -6 -7 -6 -6 -6 -8 -11 -13 -15 -15 -15 -16 -17 -17 -17 -17 -17 -17 -17 -17 -17 -18 -19 -20 -19 -19 -18 -17 -17 -17 -17 -16 -16 -16 -16 -16 -16 -16 -16 -15 -15 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -15 -15 -16 -16 -16 -16 -16 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -25 -26 -26 -26 -25 -24 -23 -23 -24 -25 -23 -21 -21 -22 -23 -22 -20 -18 -18 -18 -20 -19 -17 -16 -15 -15 -15 -14 -14 -13 -13 -14 -14 -15 -16 -17 -19 -20 -21 -21 -21 -21 -22 -23 -23 -23 -22 -22 -21 -20 -18 -17 -15 -14 -14 -15 -16 -17 -18 -18 -18 -17 -17 -16 -15 -14 -13 -13 -14 -15 -16 -16 -17 -17 -18 -18 -19 -19 -20 -21 -21 -22 -21 -21 -20 -19 -20 -21 -23 -23 -22 -21 -20 -21 -22 -22 -21 -21 -21 -22 -23 -24 -24 -24 -24 -22 -21 -21 -22 -22 -21 -19 -18 -17 -16 -16 -16 -16 -15 -15 -14 -14 -14 -14 -14 -13 -13 -12 -12 -13 -13 -13 -13 -13 -13 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -12 -11 -10 -9 -8 -8 -7 -7 -7 -7 -7 -7 -7 -6 -6 -6 -6 -5 -5 -5 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -2 -2 -1 -1 -0 0 0 0 -0 -0 -0 -1 -1 -1 -0 -0 -20 -17 -10 -2 -2 -8 -15 -19 -19 -13 -5 -2 -4 -9 -15 -16 -14 -11 -9 -8 -8 -7 -9 -12 -15 -14 -8 -4 -3 -6 -9 -10 -11 -12 -14 -14 -12 -9 -8 -8 -10 -10 -9 -8 -8 -8 -9 -10 -11 -13 -14 -15 -17 -21 -24 -24 -21 -16 -11 -10 -13 -15 -15 -14 -12 -10 -10 -10 -10 -11 -11 -11 -11 -10 -9 -6 -2 1 3 4 3 1 -1 -2 -2 -3 -2 -2 -2 -1 -1 -0 2 5 6 6 5 5 6 6 6 4 1 -3 -6 -7 -7 -7 -7 -9 -10 -12 -14 -16 -17 -18 -17 -16 -15 -13 -12 -9 -5 -1 2 1 -2 -7 -10 -10 -7 -2 2 2 -2 -5 -6 -6 -5 -5 -6 -7 -7 -7 -8 -11 -12 -13 -14 -14 -16 -17 -18 -18 -18 -18 -18 -17 -17 -17 -18 -19 -20 -20 -20 -19 -18 -17 -17 -17 -17 -17 -16 -16 -16 -17 -17 -16 -16 -16 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -15 -16 -16 -17 -17 -17 -16 -16 -16 -17 -18 -19 -21 -22 -23 -24 -25 -26 -26 -26 -25 -25 -24 -24 -24 -26 -27 -26 -24 -22 -21 -22 -23 -22 -20 -19 -19 -20 -21 -19 -17 -16 -15 -15 -15 -15 -14 -14 -14 -15 -16 -17 -17 -18 -20 -21 -21 -21 -22 -23 -24 -24 -23 -23 -23 -22 -22 -20 -18 -16 -15 -15 -15 -16 -17 -18 -19 -19 -18 -18 -17 -16 -15 -14 -14 -14 -15 -16 -16 -17 -17 -17 -18 -18 -18 -19 -20 -21 -21 -21 -21 -20 -20 -20 -21 -23 -24 -23 -23 -22 -23 -23 -23 -22 -21 -21 -21 -22 -23 -24 -24 -24 -23 -23 -24 -25 -26 -26 -24 -21 -19 -18 -18 -18 -17 -17 -16 -16 -15 -15 -15 -15 -15 -14 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -12 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -12 -11 -11 -10 -9 -9 -8 -8 -7 -7 -7 -7 -7 -7 -6 -6 -6 -6 -5 -5 -5 -4 -4 -4 -4 -3 -3 -3 -3 -3 -2 -2 -1 -1 -0 -0 0 0 0 0 -0 -0 -0 -0 -0 -0 -19 -22 -20 -13 -6 -5 -10 -16 -21 -19 -11 -4 -0 -4 -11 -16 -16 -14 -10 -8 -9 -8 -9 -10 -13 -14 -11 -6 -4 -6 -9 -10 -10 -11 -13 -14 -14 -11 -9 -9 -10 -11 -11 -10 -9 -9 -9 -9 -10 -12 -13 -15 -16 -18 -21 -24 -24 -22 -17 -13 -12 -14 -16 -16 -14 -10 -9 -8 -9 -10 -10 -11 -11 -11 -11 -11 -9 -6 -2 -1 -0 1 2 2 -0 -1 -1 1 1 1 0 1 3 9 10 10 10 10 10 10 9 8 5 2 -2 -5 -6 -6 -6 -7 -8 -11 -12 -14 -16 -17 -16 -15 -13 -12 -11 -10 -8 -4 0 2 1 -4 -9 -10 -8 -3 1 3 -0 -4 -5 -6 -6 -7 -8 -8 -8 -9 -11 -12 -12 -12 -13 -15 -17 -18 -18 -18 -18 -18 -18 -18 -18 -18 -19 -20 -21 -21 -21 -20 -19 -18 -18 -18 -18 -17 -17 -17 -17 -17 -17 -17 -16 -16 -15 -15 -15 -14 -14 -14 -14 -14 -14 -14 -14 -15 -16 -17 -18 -19 -18 -18 -17 -17 -17 -18 -19 -20 -21 -23 -24 -25 -26 -26 -25 -24 -24 -23 -23 -24 -26 -27 -28 -27 -24 -23 -22 -23 -23 -22 -21 -21 -21 -22 -21 -19 -18 -16 -16 -16 -16 -16 -15 -15 -15 -16 -17 -18 -18 -19 -20 -21 -21 -22 -23 -24 -24 -23 -23 -23 -23 -22 -22 -20 -18 -16 -15 -15 -16 -16 -17 -18 -18 -19 -19 -19 -18 -17 -16 -15 -15 -15 -16 -17 -17 -17 -17 -17 -18 -18 -19 -20 -20 -20 -21 -21 -20 -20 -21 -22 -23 -24 -25 -25 -25 -25 -25 -25 -23 -22 -22 -22 -22 -23 -24 -24 -24 -24 -23 -24 -26 -28 -29 -28 -26 -24 -22 -20 -19 -19 -19 -18 -17 -16 -16 -16 -16 -16 -16 -15 -15 -15 -14 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -14 -14 -13 -13 -13 -13 -13 -12 -12 -12 -11 -11 -11 -10 -10 -9 -8 -8 -8 -8 -8 -7 -7 -7 -7 -6 -6 -6 -5 -5 -4 -4 -4 -4 -4 -3 -3 -2 -2 -2 -1 -1 -1 -0 0 0 0 0 0 0 -0 -0 -0 -0 -13 -19 -22 -20 -14 -10 -10 -14 -19 -20 -15 -7 -1 -1 -7 -14 -17 -16 -12 -9 -8 -9 -9 -10 -12 -14 -12 -8 -5 -6 -9 -11 -10 -10 -12 -14 -15 -12 -10 -9 -10 -11 -12 -12 -11 -10 -10 -10 -10 -11 -12 -13 -14 -15 -17 -21 -24 -25 -23 -18 -14 -13 -14 -15 -15 -12 -9 -7 -8 -9 -10 -10 -10 -10 -11 -11 -12 -11 -10 -8 -5 -2 1 0 -2 -3 -3 -1 0 -0 -1 0 3 8 11 10 9 10 12 12 11 10 7 5 1 -2 -4 -5 -5 -6 -7 -10 -12 -15 -17 -17 -16 -14 -12 -11 -10 -10 -9 -6 -2 1 2 -2 -6 -8 -7 -4 -0 1 -1 -3 -5 -6 -7 -9 -9 -10 -10 -11 -11 -11 -11 -12 -13 -16 -18 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -20 -22 -22 -21 -20 -19 -19 -19 -19 -18 -18 -18 -17 -17 -17 -17 -17 -17 -17 -16 -16 -16 -15 -15 -15 -15 -15 -15 -15 -15 -16 -18 -19 -20 -20 -19 -18 -18 -18 -18 -19 -20 -21 -22 -23 -24 -25 -25 -25 -24 -23 -22 -22 -23 -25 -27 -29 -29 -27 -25 -23 -23 -23 -23 -23 -22 -22 -22 -22 -22 -20 -18 -17 -17 -17 -17 -16 -16 -16 -16 -18 -18 -19 -19 -20 -20 -21 -22 -23 -24 -24 -23 -22 -22 -22 -22 -22 -21 -19 -17 -16 -15 -15 -16 -16 -17 -17 -18 -19 -20 -20 -19 -18 -17 -16 -16 -17 -17 -17 -17 -18 -18 -18 -18 -19 -20 -20 -20 -20 -20 -21 -21 -21 -22 -23 -25 -26 -26 -26 -26 -26 -26 -25 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -25 -27 -29 -29 -29 -28 -26 -24 -22 -21 -20 -19 -18 -17 -17 -16 -17 -16 -16 -16 -16 -16 -15 -15 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -14 -15 -15 -15 -15 -14 -14 -14 -13 -13 -12 -12 -12 -12 -12 -12 -12 -12 -11 -10 -9 -8 -8 -8 -8 -8 -8 -7 -7 -7 -7 -6 -6 -5 -5 -5 -4 -4 -4 -3 -3 -2 -2 -2 -1 -1 -1 -0 0 0 1 1 1 0 0 0 0 0 -10 -13 -18 -21 -20 -17 -14 -14 -15 -17 -16 -11 -4 -1 -4 -11 -16 -17 -14 -10 -8 -9 -10 -11 -12 -14 -13 -9 -6 -6 -9 -12 -12 -11 -11 -13 -14 -14 -11 -9 -9 -10 -12 -13 -12 -12 -11 -11 -11 -11 -11 -12 -12 -13 -14 -16 -20 -23 -25 -22 -18 -15 -14 -15 -15 -13 -10 -8 -7 -7 -8 -9 -9 -9 -9 -10 -12 -12 -12 -10 -8 -5 -4 -4 -4 -3 -2 -2 -2 -3 -2 -0 2 6 10 12 12 13 13 12 11 10 8 6 3 -1 -4 -6 -7 -7 -8 -11 -14 -17 -19 -18 -16 -13 -11 -9 -9 -9 -9 -7 -4 -0 1 0 -3 -5 -4 -3 -3 -3 -3 -3 -4 -6 -8 -10 -10 -10 -11 -11 -11 -10 -11 -12 -15 -17 -19 -19 -20 -20 -20 -20 -20 -20 -19 -20 -20 -21 -22 -23 -22 -21 -21 -20 -20 -20 -19 -19 -18 -18 -18 -18 -17 -17 -17 -17 -17 -17 -17 -16 -16 -16 -16 -16 -16 -16 -17 -18 -20 -21 -21 -21 -20 -20 -19 -20 -20 -20 -21 -21 -22 -23 -24 -25 -24 -24 -23 -22 -21 -22 -23 -26 -28 -30 -30 -27 -25 -24 -24 -24 -24 -23 -22 -22 -23 -23 -22 -20 -19 -18 -18 -19 -18 -17 -17 -17 -18 -19 -19 -20 -20 -20 -20 -21 -22 -24 -24 -24 -23 -22 -22 -22 -22 -22 -20 -19 -17 -16 -16 -16 -16 -16 -16 -17 -18 -19 -20 -20 -20 -19 -18 -18 -18 -18 -18 -18 -18 -18 -19 -19 -20 -20 -20 -20 -20 -20 -21 -22 -22 -23 -24 -25 -26 -27 -27 -27 -27 -26 -25 -25 -25 -25 -25 -25 -25 -25 -25 -25 -24 -24 -25 -26 -27 -28 -29 -29 -29 -28 -26 -24 -22 -20 -19 -18 -17 -17 -17 -17 -17 -17 -17 -17 -16 -16 -15 -15 -15 -14 -14 -13 -13 -13 -13 -14 -14 -14 -14 -14 -14 -15 -15 -15 -16 -16 -16 -15 -15 -14 -13 -13 -12 -12 -12 -12 -13 -13 -14 -13 -12 -11 -10 -9 -9 -9 -9 -8 -8 -8 -8 -7 -7 -7 -6 -6 -6 -5 -5 -4 -4 -3 -3 -2 -2 -2 -1 -1 -0 0 0 1 1 1 1 1 1 1 1 1 -12 -10 -13 -17 -20 -21 -19 -16 -13 -14 -14 -12 -7 -2 -2 -8 -14 -17 -16 -12 -8 -9 -10 -12 -13 -14 -14 -10 -7 -6 -9 -13 -15 -13 -12 -12 -13 -14 -12 -10 -9 -9 -11 -12 -13 -12 -12 -11 -11 -10 -10 -10 -11 -11 -12 -13 -16 -20 -23 -23 -21 -17 -16 -15 -16 -14 -12 -9 -7 -6 -7 -8 -10 -10 -10 -10 -10 -11 -12 -11 -10 -9 -7 -6 -4 -2 -1 -1 -2 -3 -3 -1 2 4 9 12 13 13 13 12 11 10 9 7 4 0 -4 -7 -8 -9 -10 -13 -16 -19 -20 -19 -16 -13 -10 -8 -8 -8 -8 -7 -5 -2 0 1 0 -1 -3 -4 -6 -6 -5 -4 -5 -7 -9 -10 -10 -10 -10 -10 -10 -11 -12 -14 -17 -18 -20 -20 -21 -21 -21 -21 -21 -21 -20 -20 -21 -22 -23 -24 -23 -23 -22 -22 -22 -22 -21 -20 -19 -19 -18 -18 -18 -18 -18 -18 -18 -17 -17 -17 -17 -17 -17 -17 -17 -18 -19 -20 -21 -22 -22 -21 -21 -21 -21 -21 -21 -21 -21 -21 -22 -22 -23 -24 -23 -23 -22 -21 -21 -22 -24 -26 -28 -30 -29 -27 -25 -24 -24 -24 -24 -23 -23 -23 -24 -24 -23 -21 -20 -20 -20 -20 -19 -18 -18 -18 -19 -20 -20 -20 -20 -20 -20 -21 -22 -23 -23 -23 -22 -21 -22 -22 -22 -22 -20 -19 -18 -17 -17 -17 -17 -17 -17 -17 -18 -19 -20 -21 -21 -21 -20 -20 -20 -20 -19 -19 -19 -19 -20 -20 -21 -21 -21 -21 -21 -22 -22 -23 -23 -24 -24 -25 -26 -27 -27 -27 -26 -25 -25 -25 -26 -26 -26 -27 -27 -27 -26 -26 -25 -25 -26 -26 -26 -27 -27 -28 -29 -29 -28 -26 -23 -21 -20 -18 -18 -18 -18 -17 -17 -17 -17 -17 -17 -17 -16 -16 -16 -15 -14 -14 -13 -14 -14 -14 -14 -14 -14 -15 -15 -15 -15 -16 -16 -16 -16 -16 -16 -15 -14 -13 -12 -12 -12 -13 -13 -14 -15 -15 -14 -12 -11 -10 -9 -9 -9 -9 -9 -8 -8 -8 -8 -7 -7 -6 -6 -6 -5 -4 -4 -3 -2 -2 -2 -1 -1 -0 -0 0 1 1 1 1 1 1 1 1 1 1 -17 -13 -10 -12 -17 -20 -21 -19 -15 -12 -12 -12 -9 -4 -0 -4 -11 -15 -16 -13 -10 -9 -10 -12 -13 -15 -15 -13 -9 -6 -7 -12 -15 -15 -14 -13 -13 -15 -14 -12 -10 -8 -9 -11 -12 -13 -12 -12 -10 -10 -9 -10 -10 -10 -10 -11 -13 -16 -19 -22 -22 -20 -18 -17 -16 -15 -13 -10 -8 -6 -6 -7 -10 -11 -11 -10 -9 -10 -11 -11 -12 -11 -9 -7 -6 -4 -1 0 -1 -2 -2 -1 1 3 8 11 12 12 12 12 11 10 9 8 5 2 -2 -6 -8 -10 -12 -15 -18 -21 -22 -20 -17 -13 -10 -8 -8 -7 -7 -7 -6 -3 -1 2 2 1 -2 -5 -8 -8 -6 -6 -6 -8 -9 -9 -9 -9 -9 -10 -11 -13 -15 -16 -18 -20 -21 -22 -22 -22 -22 -22 -22 -22 -21 -21 -22 -24 -24 -25 -24 -24 -24 -24 -24 -23 -22 -21 -20 -20 -19 -18 -18 -18 -18 -18 -18 -18 -17 -17 -17 -17 -18 -18 -19 -20 -21 -22 -22 -22 -22 -22 -21 -22 -22 -22 -22 -21 -21 -21 -21 -22 -23 -23 -23 -22 -22 -22 -22 -23 -25 -27 -29 -30 -29 -27 -26 -25 -25 -25 -24 -24 -24 -25 -25 -24 -23 -22 -22 -22 -22 -21 -20 -19 -19 -20 -20 -20 -20 -20 -20 -20 -20 -21 -21 -22 -22 -22 -21 -22 -22 -22 -22 -22 -20 -19 -19 -18 -18 -18 -18 -18 -18 -18 -19 -20 -21 -22 -22 -22 -22 -22 -21 -21 -21 -20 -20 -21 -21 -21 -21 -21 -22 -22 -23 -24 -24 -24 -24 -24 -25 -26 -27 -27 -27 -26 -26 -26 -26 -27 -27 -28 -28 -28 -28 -28 -27 -27 -27 -27 -27 -26 -26 -26 -27 -27 -28 -28 -28 -26 -24 -22 -21 -19 -19 -19 -18 -18 -17 -17 -17 -17 -17 -17 -17 -17 -17 -16 -15 -15 -15 -14 -14 -14 -14 -14 -15 -15 -15 -15 -16 -16 -16 -16 -17 -17 -16 -15 -14 -13 -13 -13 -13 -14 -14 -15 -16 -16 -15 -13 -12 -11 -10 -10 -10 -10 -9 -9 -9 -8 -8 -8 -7 -7 -6 -6 -5 -4 -4 -3 -2 -2 -1 -1 -0 -0 0 1 1 1 1 1 1 1 1 1 1 1 -20 -17 -12 -9 -11 -15 -19 -21 -19 -15 -13 -12 -10 -6 -1 -1 -7 -12 -15 -14 -11 -9 -10 -11 -13 -15 -16 -15 -11 -7 -6 -9 -13 -14 -14 -13 -13 -15 -16 -15 -12 -9 -8 -9 -11 -12 -12 -12 -11 -10 -10 -9 -10 -10 -9 -10 -10 -12 -15 -18 -20 -21 -21 -19 -17 -16 -14 -12 -9 -7 -5 -6 -9 -10 -11 -10 -9 -10 -10 -11 -11 -11 -10 -9 -8 -6 -4 -1 1 0 -0 0 1 3 7 10 11 11 12 12 11 10 9 8 7 5 1 -3 -7 -10 -13 -17 -20 -22 -22 -21 -17 -14 -11 -9 -8 -7 -7 -7 -6 -4 -2 1 2 1 -2 -5 -7 -8 -8 -8 -9 -9 -9 -9 -8 -8 -9 -11 -14 -15 -16 -17 -19 -21 -22 -23 -23 -23 -23 -23 -23 -22 -22 -22 -23 -25 -25 -25 -25 -25 -26 -26 -25 -25 -24 -23 -21 -20 -19 -19 -18 -18 -18 -18 -18 -18 -17 -17 -17 -18 -19 -20 -21 -22 -22 -23 -23 -22 -22 -22 -22 -22 -22 -22 -22 -21 -21 -21 -21 -22 -22 -23 -22 -22 -22 -22 -23 -24 -25 -27 -29 -30 -29 -28 -26 -25 -25 -25 -25 -25 -25 -26 -26 -25 -24 -24 -24 -24 -23 -22 -21 -21 -21 -22 -21 -20 -20 -20 -20 -20 -20 -20 -20 -20 -20 -21 -21 -22 -22 -23 -22 -22 -21 -20 -20 -20 -20 -20 -19 -19 -19 -19 -20 -21 -22 -22 -22 -23 -23 -23 -23 -23 -23 -23 -22 -22 -22 -22 -22 -23 -23 -24 -25 -25 -24 -24 -24 -24 -25 -26 -27 -27 -27 -27 -27 -27 -28 -29 -29 -29 -29 -30 -29 -29 -29 -29 -29 -28 -28 -27 -27 -27 -27 -27 -27 -28 -27 -27 -26 -24 -22 -21 -20 -19 -19 -18 -17 -17 -17 -17 -18 -18 -18 -18 -17 -17 -16 -16 -16 -16 -15 -15 -15 -15 -15 -15 -15 -16 -16 -16 -16 -16 -17 -17 -17 -16 -15 -14 -14 -14 -15 -15 -15 -16 -17 -17 -16 -14 -13 -12 -11 -11 -10 -10 -10 -10 -9 -9 -8 -8 -7 -7 -7 -6 -5 -5 -4 -3 -2 -1 -1 -0 0 1 1 1 1 1 1 1 1 1 1 2 1 1 -21 -19 -15 -10 -8 -11 -15 -19 -20 -19 -17 -15 -12 -8 -3 -0 -3 -9 -13 -14 -12 -10 -10 -11 -12 -14 -16 -17 -14 -9 -6 -7 -10 -13 -13 -13 -13 -15 -17 -17 -15 -12 -9 -8 -9 -10 -11 -12 -12 -11 -10 -10 -10 -10 -10 -10 -10 -10 -12 -14 -17 -20 -21 -20 -18 -16 -15 -14 -12 -10 -7 -6 -7 -8 -10 -11 -12 -11 -11 -11 -10 -10 -10 -9 -9 -8 -6 -3 0 1 2 2 3 4 6 9 11 12 12 13 12 11 10 9 8 7 5 1 -4 -9 -13 -17 -20 -22 -22 -21 -18 -14 -12 -10 -9 -8 -7 -7 -6 -6 -4 -2 -0 -0 -2 -4 -6 -7 -8 -9 -10 -10 -10 -9 -8 -8 -10 -13 -16 -17 -17 -18 -20 -22 -24 -24 -24 -23 -24 -24 -23 -23 -23 -23 -24 -25 -26 -26 -26 -27 -27 -27 -27 -26 -25 -24 -22 -21 -20 -19 -19 -19 -19 -19 -18 -18 -18 -17 -18 -19 -20 -21 -22 -23 -23 -23 -22 -22 -22 -22 -22 -23 -23 -22 -22 -21 -21 -21 -22 -22 -23 -23 -23 -22 -23 -23 -24 -25 -26 -28 -29 -30 -29 -28 -26 -26 -26 -26 -26 -26 -27 -27 -26 -25 -25 -26 -26 -26 -24 -23 -23 -23 -23 -22 -21 -21 -21 -21 -21 -20 -20 -20 -19 -19 -19 -20 -21 -22 -23 -23 -22 -22 -22 -22 -22 -22 -22 -21 -21 -20 -20 -20 -21 -22 -22 -22 -22 -23 -23 -24 -25 -25 -25 -25 -24 -24 -24 -23 -24 -24 -25 -26 -26 -25 -25 -25 -25 -26 -26 -27 -27 -27 -28 -28 -29 -30 -30 -31 -31 -31 -30 -30 -30 -30 -30 -30 -30 -29 -29 -28 -28 -28 -27 -27 -27 -27 -27 -27 -26 -25 -23 -22 -21 -20 -19 -18 -17 -17 -17 -17 -18 -19 -19 -19 -18 -18 -18 -17 -17 -17 -16 -16 -15 -15 -15 -15 -16 -16 -16 -16 -16 -16 -17 -17 -17 -16 -16 -15 -15 -15 -16 -16 -16 -17 -17 -18 -17 -16 -14 -13 -12 -11 -11 -11 -11 -10 -10 -9 -9 -8 -8 -8 -7 -7 -6 -5 -4 -3 -2 -1 -0 0 1 1 1 1 1 1 1 2 2 2 2 2 1 1 -19 -20 -17 -13 -9 -9 -12 -16 -19 -21 -20 -18 -15 -11 -7 -2 -2 -6 -10 -12 -12 -11 -11 -11 -12 -13 -16 -17 -16 -12 -7 -5 -8 -11 -12 -12 -12 -13 -16 -18 -18 -16 -12 -9 -8 -9 -10 -11 -11 -11 -11 -10 -10 -11 -11 -11 -11 -11 -11 -12 -14 -17 -20 -20 -19 -17 -16 -16 -15 -13 -11 -8 -7 -8 -10 -12 -14 -14 -13 -11 -10 -10 -9 -8 -8 -6 -5 -2 -0 1 2 4 5 6 5 6 9 10 10 11 12 12 11 11 10 10 8 4 -1 -6 -12 -16 -20 -22 -22 -20 -18 -15 -13 -11 -9 -8 -7 -7 -7 -7 -7 -5 -4 -2 -2 -2 -4 -6 -9 -10 -11 -11 -10 -9 -9 -11 -13 -15 -17 -17 -18 -19 -21 -23 -25 -25 -24 -24 -24 -24 -24 -23 -23 -24 -25 -26 -27 -27 -27 -28 -28 -29 -28 -28 -27 -25 -24 -22 -21 -20 -19 -19 -19 -19 -19 -19 -18 -18 -18 -19 -21 -22 -23 -23 -23 -22 -22 -22 -22 -22 -22 -22 -22 -22 -21 -21 -21 -22 -22 -23 -23 -23 -23 -23 -23 -23 -24 -26 -27 -29 -30 -30 -29 -28 -26 -26 -26 -27 -27 -28 -28 -27 -27 -26 -27 -28 -28 -27 -25 -25 -25 -25 -24 -23 -22 -22 -22 -21 -21 -20 -20 -20 -19 -19 -19 -19 -20 -21 -22 -22 -23 -23 -23 -24 -24 -24 -23 -23 -22 -22 -22 -22 -22 -22 -22 -22 -22 -23 -24 -25 -26 -26 -26 -26 -26 -26 -25 -25 -25 -26 -26 -26 -26 -26 -26 -27 -27 -27 -27 -27 -28 -29 -30 -31 -31 -32 -32 -32 -32 -31 -30 -30 -30 -31 -31 -31 -31 -30 -30 -29 -29 -29 -28 -27 -27 -27 -27 -28 -27 -26 -25 -23 -22 -21 -20 -19 -18 -17 -17 -17 -18 -19 -19 -19 -19 -19 -19 -19 -19 -18 -17 -17 -16 -16 -16 -16 -16 -17 -17 -17 -17 -16 -16 -17 -17 -17 -17 -16 -17 -17 -17 -17 -17 -18 -18 -19 -18 -17 -15 -14 -13 -12 -12 -12 -11 -11 -10 -9 -9 -9 -9 -9 -8 -7 -6 -5 -4 -3 -2 -1 -0 1 1 1 2 2 2 2 2 2 2 3 2 2 2 1 -16 -18 -17 -14 -9 -7 -9 -12 -16 -19 -21 -20 -18 -14 -9 -4 -3 -5 -8 -10 -11 -10 -10 -11 -12 -13 -15 -18 -18 -14 -9 -4 -5 -9 -11 -12 -12 -11 -14 -17 -18 -18 -15 -12 -9 -8 -8 -9 -10 -10 -10 -10 -10 -11 -12 -12 -12 -13 -13 -13 -14 -16 -18 -20 -20 -19 -17 -17 -17 -16 -15 -12 -9 -8 -9 -11 -14 -15 -14 -12 -11 -10 -9 -7 -5 -4 -2 -1 1 2 2 4 6 8 8 9 11 12 11 12 14 14 13 13 13 13 11 8 2 -4 -10 -15 -19 -21 -21 -20 -18 -16 -13 -11 -8 -7 -7 -7 -7 -8 -8 -8 -7 -5 -3 -2 -2 -5 -8 -10 -10 -11 -11 -11 -12 -14 -15 -16 -17 -18 -19 -21 -23 -25 -26 -25 -25 -24 -25 -25 -25 -24 -24 -25 -26 -27 -27 -27 -28 -28 -29 -29 -29 -29 -28 -27 -26 -24 -22 -21 -20 -20 -20 -20 -20 -20 -19 -19 -19 -20 -21 -23 -24 -23 -22 -22 -21 -21 -22 -22 -22 -22 -22 -22 -21 -21 -22 -23 -24 -24 -24 -24 -23 -23 -23 -24 -25 -27 -28 -30 -30 -30 -29 -27 -26 -26 -26 -27 -28 -29 -29 -28 -28 -28 -29 -30 -29 -28 -27 -26 -27 -26 -25 -24 -23 -23 -23 -22 -21 -21 -21 -20 -19 -19 -18 -18 -19 -20 -21 -22 -23 -24 -25 -25 -25 -25 -24 -24 -23 -23 -23 -23 -22 -22 -22 -22 -23 -24 -25 -26 -26 -27 -27 -27 -28 -27 -27 -27 -27 -27 -27 -27 -27 -27 -28 -29 -29 -28 -28 -28 -29 -30 -31 -32 -33 -33 -33 -33 -32 -31 -30 -30 -31 -32 -32 -32 -31 -30 -30 -30 -30 -29 -29 -28 -28 -27 -27 -28 -27 -27 -26 -25 -24 -22 -21 -20 -19 -18 -17 -17 -17 -18 -19 -19 -19 -19 -20 -20 -20 -19 -19 -18 -17 -16 -16 -16 -17 -17 -17 -17 -17 -16 -16 -17 -17 -17 -18 -18 -18 -18 -18 -18 -18 -19 -19 -20 -19 -18 -17 -15 -14 -14 -13 -13 -12 -11 -10 -10 -10 -10 -10 -9 -9 -8 -7 -6 -4 -3 -2 -1 -0 1 1 2 2 2 2 2 3 3 3 3 3 3 2 2 -14 -15 -16 -14 -10 -8 -9 -11 -14 -17 -20 -21 -20 -17 -12 -6 -3 -4 -7 -10 -10 -9 -9 -10 -12 -13 -15 -18 -19 -17 -12 -6 -3 -6 -10 -12 -12 -11 -12 -14 -17 -18 -18 -14 -11 -9 -8 -8 -9 -9 -10 -9 -9 -10 -10 -11 -12 -13 -14 -15 -16 -17 -18 -20 -20 -20 -18 -18 -17 -18 -18 -17 -14 -12 -11 -11 -12 -14 -14 -13 -11 -9 -8 -6 -4 -1 2 4 5 4 3 3 6 9 11 11 11 12 12 12 14 16 16 16 16 15 13 10 4 -2 -9 -15 -19 -20 -20 -19 -18 -15 -13 -10 -8 -6 -6 -6 -6 -7 -8 -8 -9 -7 -5 -3 -2 -4 -6 -8 -9 -11 -12 -14 -16 -16 -17 -17 -18 -19 -20 -22 -25 -26 -27 -26 -25 -25 -25 -26 -25 -25 -25 -25 -27 -28 -28 -28 -28 -29 -29 -30 -30 -30 -29 -29 -28 -26 -24 -23 -22 -21 -21 -22 -22 -22 -21 -20 -20 -20 -22 -23 -23 -23 -22 -22 -21 -22 -22 -22 -22 -22 -22 -21 -21 -22 -23 -24 -25 -26 -26 -25 -24 -24 -24 -25 -26 -28 -29 -30 -31 -30 -28 -27 -26 -26 -26 -28 -29 -29 -29 -29 -29 -30 -31 -31 -30 -29 -28 -28 -28 -28 -26 -25 -25 -25 -24 -23 -22 -21 -21 -21 -20 -19 -19 -18 -19 -20 -21 -23 -25 -26 -27 -27 -26 -25 -25 -24 -24 -24 -23 -23 -22 -22 -22 -23 -24 -26 -26 -26 -26 -26 -27 -28 -29 -29 -29 -28 -28 -28 -27 -28 -28 -29 -30 -30 -29 -29 -28 -28 -29 -30 -32 -33 -33 -34 -33 -32 -31 -30 -30 -31 -32 -33 -32 -32 -31 -31 -31 -31 -30 -30 -29 -29 -28 -28 -27 -27 -27 -27 -27 -26 -25 -24 -23 -22 -20 -19 -17 -17 -17 -18 -19 -19 -20 -20 -21 -21 -21 -21 -20 -19 -18 -17 -16 -16 -16 -16 -17 -16 -16 -16 -16 -16 -17 -18 -18 -18 -18 -18 -18 -19 -19 -19 -20 -20 -20 -20 -18 -17 -16 -15 -15 -14 -12 -11 -11 -10 -10 -10 -10 -9 -9 -8 -8 -7 -6 -5 -3 -2 -0 1 1 2 2 2 3 3 4 4 4 4 4 3 3 3 -11 -13 -14 -14 -12 -10 -10 -11 -13 -15 -18 -21 -22 -20 -15 -7 -3 -3 -6 -10 -11 -9 -8 -9 -11 -13 -15 -17 -19 -20 -16 -10 -4 -4 -7 -11 -12 -11 -11 -12 -15 -17 -18 -16 -13 -10 -8 -8 -8 -9 -9 -9 -9 -8 -8 -9 -9 -11 -12 -14 -16 -17 -18 -19 -20 -20 -18 -18 -18 -19 -19 -19 -17 -16 -14 -13 -12 -12 -12 -11 -10 -7 -5 -3 -0 3 6 9 9 8 7 6 8 10 14 15 17 18 18 17 18 19 19 18 18 17 15 11 6 -1 -8 -14 -18 -19 -19 -17 -16 -14 -12 -10 -8 -6 -5 -5 -5 -5 -6 -8 -9 -9 -8 -6 -5 -5 -6 -7 -9 -11 -14 -17 -18 -18 -17 -17 -18 -20 -22 -24 -26 -28 -28 -27 -26 -26 -26 -27 -26 -26 -26 -26 -28 -29 -29 -28 -28 -29 -29 -30 -30 -30 -30 -30 -29 -28 -26 -25 -23 -23 -23 -24 -24 -24 -23 -22 -21 -21 -22 -23 -23 -23 -23 -22 -22 -22 -23 -23 -23 -23 -22 -22 -22 -23 -24 -26 -27 -28 -27 -26 -25 -24 -25 -26 -27 -29 -30 -31 -30 -29 -28 -27 -26 -26 -27 -28 -29 -30 -30 -30 -30 -31 -32 -31 -30 -29 -30 -30 -30 -29 -28 -27 -27 -26 -25 -23 -23 -22 -22 -22 -21 -20 -19 -19 -19 -20 -22 -24 -25 -27 -27 -27 -27 -26 -25 -25 -24 -24 -23 -22 -22 -22 -23 -25 -26 -26 -26 -25 -25 -25 -26 -28 -29 -29 -29 -29 -29 -29 -29 -29 -30 -31 -31 -30 -29 -29 -28 -29 -30 -31 -32 -33 -33 -33 -33 -32 -31 -31 -31 -32 -33 -33 -32 -31 -31 -31 -31 -31 -31 -30 -30 -29 -29 -28 -27 -27 -27 -27 -27 -27 -26 -26 -25 -23 -22 -20 -18 -17 -17 -18 -19 -19 -20 -21 -22 -22 -22 -22 -21 -20 -18 -17 -16 -16 -15 -15 -16 -15 -15 -15 -16 -16 -17 -18 -18 -19 -19 -19 -19 -19 -19 -20 -21 -21 -21 -21 -19 -18 -18 -17 -17 -15 -13 -12 -12 -11 -11 -10 -10 -9 -9 -9 -9 -8 -7 -6 -4 -3 -1 -0 0 1 2 3 3 4 5 5 5 4 4 4 4 4 -8 -10 -12 -14 -13 -12 -11 -11 -12 -13 -16 -20 -22 -23 -19 -11 -4 -2 -4 -9 -12 -11 -8 -8 -10 -12 -13 -16 -19 -20 -20 -15 -8 -5 -6 -9 -12 -12 -12 -12 -13 -14 -15 -15 -13 -11 -9 -8 -8 -8 -9 -9 -9 -8 -8 -7 -7 -8 -9 -10 -12 -14 -15 -16 -17 -17 -16 -16 -17 -18 -19 -19 -19 -18 -18 -16 -13 -10 -9 -9 -8 -6 -2 2 5 9 12 13 14 14 13 12 12 13 17 19 21 21 22 23 21 21 21 21 20 19 16 12 7 1 -7 -13 -17 -19 -18 -16 -15 -13 -12 -10 -8 -6 -5 -4 -4 -4 -5 -8 -9 -10 -10 -9 -9 -8 -7 -8 -9 -12 -16 -18 -19 -18 -18 -18 -19 -21 -23 -25 -27 -29 -29 -28 -27 -27 -28 -28 -27 -26 -27 -28 -29 -29 -29 -29 -29 -29 -29 -30 -30 -30 -31 -31 -31 -30 -28 -27 -25 -24 -25 -26 -26 -27 -26 -24 -22 -22 -22 -23 -24 -24 -24 -23 -23 -23 -24 -24 -24 -23 -23 -23 -23 -25 -27 -28 -29 -29 -28 -27 -26 -25 -26 -27 -29 -30 -31 -30 -29 -28 -27 -26 -26 -26 -27 -28 -30 -31 -31 -31 -32 -32 -32 -31 -30 -30 -31 -31 -31 -30 -30 -29 -29 -27 -26 -24 -23 -24 -24 -23 -23 -22 -21 -20 -20 -21 -22 -24 -25 -27 -27 -28 -27 -26 -26 -25 -25 -24 -23 -23 -23 -23 -24 -25 -26 -25 -24 -23 -23 -24 -26 -27 -28 -29 -29 -30 -30 -31 -31 -31 -31 -31 -31 -30 -30 -29 -29 -29 -30 -31 -32 -32 -32 -32 -32 -32 -32 -32 -33 -33 -33 -32 -31 -30 -31 -31 -31 -31 -31 -30 -30 -30 -29 -28 -28 -27 -27 -27 -27 -27 -27 -27 -26 -25 -23 -21 -19 -18 -18 -18 -19 -20 -21 -22 -23 -24 -24 -23 -22 -21 -19 -18 -16 -15 -15 -14 -14 -14 -15 -15 -15 -16 -17 -17 -18 -18 -19 -19 -19 -19 -20 -21 -21 -22 -22 -21 -21 -20 -19 -19 -18 -17 -15 -14 -13 -12 -11 -10 -10 -10 -10 -10 -10 -9 -8 -7 -5 -4 -3 -2 -1 0 2 3 4 4 5 5 4 4 5 5 5 5 -5 -6 -9 -13 -13 -12 -12 -12 -12 -12 -14 -17 -21 -24 -24 -17 -7 -1 -2 -7 -11 -11 -9 -8 -9 -11 -12 -14 -17 -19 -21 -19 -14 -8 -6 -8 -11 -12 -12 -12 -12 -12 -12 -12 -12 -11 -9 -8 -7 -7 -8 -8 -8 -8 -8 -7 -6 -6 -6 -7 -8 -9 -10 -12 -13 -13 -13 -13 -14 -16 -17 -18 -19 -19 -19 -18 -15 -11 -8 -6 -5 -3 1 6 11 15 18 19 20 21 20 20 20 20 24 27 27 27 26 26 23 23 23 24 22 20 18 14 9 2 -5 -12 -16 -18 -17 -16 -14 -13 -11 -10 -8 -7 -5 -4 -4 -4 -5 -7 -9 -10 -11 -12 -12 -11 -10 -10 -11 -14 -17 -19 -19 -19 -18 -19 -21 -23 -24 -26 -28 -29 -29 -29 -29 -29 -29 -29 -28 -27 -28 -29 -30 -30 -30 -29 -29 -30 -30 -30 -30 -30 -31 -31 -32 -31 -30 -28 -27 -26 -26 -27 -29 -29 -28 -26 -24 -23 -23 -24 -25 -25 -25 -24 -24 -25 -25 -25 -25 -25 -24 -24 -26 -27 -29 -31 -31 -30 -29 -27 -27 -27 -27 -29 -30 -31 -31 -30 -29 -28 -27 -27 -27 -27 -28 -29 -31 -32 -33 -33 -32 -32 -31 -30 -30 -30 -31 -32 -32 -31 -31 -30 -29 -28 -26 -25 -25 -25 -25 -25 -24 -23 -23 -22 -22 -22 -23 -24 -25 -26 -27 -28 -27 -27 -26 -26 -25 -25 -24 -23 -23 -24 -25 -25 -25 -24 -23 -22 -22 -23 -25 -26 -27 -29 -30 -31 -32 -33 -33 -33 -33 -32 -32 -31 -30 -30 -30 -30 -31 -32 -32 -31 -31 -31 -31 -32 -32 -33 -34 -34 -33 -32 -31 -31 -31 -32 -31 -31 -31 -31 -30 -30 -30 -29 -28 -27 -27 -27 -27 -27 -27 -27 -27 -26 -24 -22 -21 -19 -19 -19 -19 -20 -22 -23 -24 -25 -25 -24 -23 -22 -20 -19 -17 -16 -15 -14 -14 -14 -14 -14 -15 -16 -16 -17 -18 -18 -19 -19 -19 -20 -20 -21 -21 -21 -22 -22 -21 -21 -21 -20 -20 -19 -17 -16 -14 -13 -12 -11 -11 -11 -11 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 0 2 3 4 4 4 4 4 4 5 5 5 5 -3 -4 -7 -11 -12 -12 -12 -12 -13 -13 -13 -15 -19 -23 -26 -23 -12 -4 -1 -4 -10 -11 -9 -8 -8 -10 -12 -13 -15 -17 -20 -21 -18 -12 -8 -7 -8 -11 -12 -12 -12 -11 -11 -11 -11 -11 -10 -9 -7 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -6 -6 -6 -7 -7 -8 -8 -8 -9 -11 -13 -15 -16 -18 -19 -19 -19 -18 -12 -7 -3 -0 2 6 11 16 21 25 27 28 28 28 28 29 32 36 37 36 34 32 29 26 25 25 25 24 22 19 15 10 4 -2 -10 -15 -18 -18 -16 -15 -13 -12 -10 -8 -7 -6 -5 -4 -4 -5 -6 -7 -9 -11 -13 -14 -13 -13 -12 -13 -15 -18 -19 -19 -19 -19 -20 -22 -24 -25 -27 -28 -29 -29 -30 -30 -30 -30 -30 -29 -28 -29 -30 -31 -31 -31 -30 -30 -30 -30 -30 -31 -31 -31 -32 -32 -32 -31 -30 -28 -27 -28 -29 -30 -30 -30 -28 -26 -24 -24 -25 -26 -27 -26 -26 -26 -26 -27 -27 -27 -26 -26 -27 -28 -30 -32 -32 -32 -31 -29 -28 -27 -28 -29 -30 -31 -31 -30 -29 -28 -28 -27 -27 -28 -28 -29 -31 -32 -33 -34 -33 -32 -31 -30 -30 -30 -31 -32 -32 -32 -31 -31 -30 -29 -28 -27 -26 -26 -27 -27 -27 -26 -25 -24 -24 -23 -23 -23 -24 -25 -25 -26 -27 -27 -26 -26 -26 -26 -25 -25 -24 -25 -25 -25 -25 -24 -23 -22 -22 -22 -23 -24 -25 -27 -28 -30 -31 -32 -33 -33 -34 -34 -33 -33 -32 -32 -31 -31 -31 -32 -32 -32 -31 -30 -30 -31 -32 -33 -34 -34 -34 -33 -32 -32 -32 -32 -31 -31 -31 -31 -31 -30 -30 -30 -30 -29 -28 -27 -27 -27 -27 -27 -28 -27 -26 -25 -24 -22 -21 -20 -19 -20 -21 -22 -24 -25 -26 -27 -26 -25 -24 -22 -20 -18 -16 -15 -14 -13 -13 -13 -14 -15 -15 -16 -17 -17 -18 -18 -19 -19 -20 -21 -21 -21 -21 -21 -21 -22 -22 -22 -22 -21 -20 -19 -18 -16 -14 -13 -12 -12 -12 -11 -10 -9 -8 -7 -7 -6 -6 -5 -4 -2 -0 1 2 2 2 2 3 3 4 4 4 4 4 -3 -4 -7 -10 -11 -11 -11 -12 -14 -14 -14 -14 -16 -20 -25 -26 -18 -8 -3 -3 -9 -12 -9 -7 -7 -8 -10 -12 -13 -15 -18 -21 -21 -17 -11 -7 -7 -9 -10 -11 -11 -11 -11 -10 -10 -10 -10 -9 -8 -7 -6 -6 -5 -5 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -3 -4 -6 -9 -12 -14 -16 -18 -19 -19 -18 -13 -6 -0 5 8 12 17 23 28 32 34 35 35 34 35 39 45 48 47 43 40 37 35 32 29 26 24 24 23 21 17 12 6 -0 -8 -15 -18 -18 -17 -16 -15 -13 -10 -8 -7 -6 -6 -5 -5 -5 -5 -6 -8 -10 -12 -14 -15 -15 -15 -16 -17 -19 -19 -19 -19 -19 -21 -23 -25 -26 -27 -28 -29 -29 -30 -31 -31 -31 -30 -30 -30 -30 -32 -32 -32 -32 -31 -31 -31 -31 -31 -31 -31 -32 -32 -33 -33 -32 -31 -30 -29 -29 -30 -31 -32 -31 -29 -27 -26 -26 -27 -28 -28 -28 -28 -28 -28 -29 -28 -28 -27 -27 -28 -30 -32 -33 -33 -33 -31 -30 -29 -28 -28 -29 -30 -31 -30 -30 -29 -29 -28 -28 -28 -28 -29 -30 -32 -33 -34 -35 -34 -32 -31 -30 -30 -30 -31 -32 -32 -31 -31 -30 -30 -29 -28 -27 -27 -28 -28 -28 -28 -27 -26 -26 -25 -25 -24 -24 -24 -24 -25 -25 -25 -25 -25 -26 -26 -26 -26 -25 -25 -25 -26 -25 -25 -24 -24 -23 -23 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -32 -33 -33 -33 -33 -33 -33 -32 -32 -33 -33 -33 -32 -31 -30 -30 -31 -32 -32 -33 -34 -33 -33 -33 -33 -32 -32 -31 -30 -30 -30 -30 -30 -30 -30 -30 -29 -28 -27 -27 -26 -27 -27 -27 -27 -27 -26 -25 -24 -22 -21 -20 -20 -21 -22 -24 -26 -27 -28 -27 -27 -25 -23 -21 -19 -17 -16 -14 -13 -13 -13 -14 -14 -15 -16 -16 -17 -18 -18 -19 -19 -20 -21 -21 -21 -20 -21 -21 -22 -22 -23 -23 -22 -22 -21 -20 -18 -17 -15 -14 -13 -12 -11 -9 -8 -7 -7 -7 -7 -6 -5 -3 -2 -1 -1 -0 0 1 1 2 2 3 3 3 3 4 -5 -6 -8 -10 -11 -11 -11 -12 -13 -14 -14 -14 -15 -18 -23 -26 -21 -12 -5 -3 -8 -13 -11 -8 -6 -7 -9 -10 -11 -13 -16 -19 -22 -20 -15 -10 -7 -7 -9 -10 -10 -10 -10 -10 -9 -9 -9 -9 -9 -8 -6 -5 -4 -4 -4 -5 -5 -5 -6 -6 -7 -6 -6 -5 -5 -3 -0 1 -1 -4 -7 -10 -13 -15 -16 -17 -16 -13 -6 2 8 14 18 23 27 33 37 40 42 41 41 43 49 58 57 52 48 45 43 42 41 38 33 27 24 23 22 18 14 8 1 -8 -14 -18 -19 -19 -19 -17 -15 -12 -10 -8 -7 -6 -6 -5 -5 -5 -6 -7 -9 -11 -14 -16 -17 -18 -19 -19 -19 -19 -19 -18 -19 -21 -23 -25 -26 -27 -27 -28 -29 -30 -31 -31 -31 -31 -30 -31 -32 -33 -33 -33 -33 -33 -33 -33 -32 -32 -32 -32 -32 -33 -34 -34 -33 -32 -31 -30 -30 -31 -32 -32 -32 -30 -29 -28 -28 -28 -29 -30 -30 -30 -30 -30 -30 -29 -29 -28 -29 -30 -32 -33 -34 -34 -33 -32 -30 -29 -29 -29 -30 -31 -31 -31 -30 -30 -29 -29 -29 -29 -29 -30 -31 -33 -34 -35 -35 -33 -32 -31 -30 -30 -30 -31 -31 -31 -31 -30 -30 -29 -29 -28 -28 -28 -29 -30 -29 -29 -28 -28 -27 -27 -26 -26 -25 -25 -24 -24 -24 -24 -24 -25 -25 -25 -25 -25 -26 -26 -26 -26 -26 -26 -26 -25 -24 -24 -23 -24 -24 -25 -25 -26 -26 -26 -27 -28 -29 -30 -31 -32 -32 -32 -33 -33 -34 -34 -34 -33 -33 -32 -31 -31 -31 -31 -32 -32 -32 -32 -33 -33 -34 -33 -32 -31 -30 -30 -30 -30 -30 -30 -30 -30 -29 -29 -28 -27 -27 -26 -26 -27 -27 -27 -27 -26 -25 -23 -22 -22 -21 -21 -22 -24 -25 -27 -28 -28 -28 -27 -25 -22 -20 -18 -17 -15 -14 -13 -13 -14 -14 -15 -15 -16 -17 -18 -18 -18 -19 -20 -20 -21 -20 -20 -20 -21 -21 -22 -23 -23 -23 -22 -22 -21 -21 -20 -18 -17 -14 -12 -10 -9 -8 -8 -8 -8 -7 -6 -5 -4 -3 -2 -2 -1 -1 0 1 2 2 2 2 2 3 4 -8 -7 -8 -11 -13 -12 -11 -10 -11 -13 -14 -14 -15 -17 -22 -26 -23 -15 -6 -3 -7 -13 -13 -10 -7 -7 -8 -9 -10 -11 -13 -17 -20 -21 -18 -13 -9 -7 -8 -9 -9 -9 -9 -8 -9 -9 -9 -9 -9 -8 -8 -7 -5 -4 -3 -3 -3 -3 -4 -5 -6 -6 -6 -5 -4 -2 1 3 3 2 -1 -5 -7 -8 -9 -10 -11 -11 -7 -1 7 15 22 27 30 33 37 41 43 43 43 45 52 62 58 52 48 45 43 42 41 39 36 32 28 26 23 20 15 10 2 -7 -13 -17 -19 -21 -21 -20 -19 -16 -13 -11 -9 -8 -7 -6 -6 -6 -6 -7 -9 -11 -14 -16 -19 -20 -21 -21 -20 -19 -18 -18 -19 -21 -23 -24 -25 -26 -27 -28 -30 -30 -31 -31 -31 -31 -31 -32 -33 -34 -34 -34 -34 -34 -34 -34 -33 -33 -33 -33 -33 -34 -34 -35 -34 -34 -32 -31 -31 -32 -32 -33 -32 -31 -30 -29 -29 -29 -31 -32 -32 -32 -32 -32 -31 -30 -30 -29 -30 -31 -33 -34 -35 -35 -34 -32 -31 -30 -29 -30 -30 -31 -31 -31 -31 -31 -30 -29 -29 -29 -29 -30 -31 -33 -34 -35 -34 -33 -32 -31 -30 -30 -31 -31 -31 -31 -31 -31 -30 -30 -29 -29 -28 -29 -30 -31 -30 -30 -29 -29 -28 -28 -28 -27 -27 -26 -24 -23 -23 -23 -24 -24 -24 -25 -25 -25 -25 -25 -26 -26 -27 -27 -27 -26 -25 -25 -24 -24 -25 -25 -24 -24 -23 -24 -25 -26 -27 -27 -28 -29 -30 -31 -32 -33 -33 -34 -34 -34 -33 -33 -32 -31 -31 -31 -31 -31 -31 -31 -32 -34 -35 -34 -33 -32 -31 -30 -30 -30 -29 -29 -29 -29 -29 -28 -28 -27 -27 -26 -26 -26 -26 -27 -27 -26 -26 -25 -23 -23 -22 -22 -22 -23 -25 -26 -28 -28 -29 -28 -26 -23 -21 -19 -17 -15 -14 -13 -13 -13 -14 -15 -15 -16 -17 -17 -18 -18 -19 -20 -20 -20 -20 -20 -20 -20 -21 -22 -22 -22 -23 -23 -22 -22 -22 -22 -21 -19 -17 -15 -12 -11 -10 -10 -9 -9 -8 -6 -5 -4 -4 -3 -2 -1 -0 1 1 1 1 1 2 3 3 4 -9 -7 -8 -11 -14 -14 -12 -10 -10 -12 -14 -14 -14 -16 -20 -25 -25 -17 -8 -3 -5 -12 -14 -12 -9 -8 -8 -9 -9 -10 -11 -14 -17 -20 -20 -17 -12 -9 -9 -9 -10 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -7 -6 -4 -3 -3 -2 -2 -3 -4 -5 -5 -4 -2 -0 2 4 5 6 5 2 -0 -2 -2 -3 -4 -6 -5 -2 3 9 16 23 27 31 34 37 41 43 45 47 52 59 52 44 40 37 34 30 29 29 28 25 19 20 21 20 17 12 4 -5 -11 -15 -18 -21 -22 -22 -22 -20 -17 -14 -12 -10 -9 -8 -8 -8 -8 -9 -10 -11 -14 -17 -19 -21 -22 -22 -21 -19 -18 -18 -18 -20 -22 -23 -25 -26 -27 -29 -30 -30 -31 -31 -32 -32 -32 -33 -34 -34 -35 -35 -35 -35 -35 -35 -34 -34 -34 -34 -34 -34 -35 -35 -35 -34 -33 -33 -32 -33 -33 -33 -33 -32 -31 -30 -29 -30 -31 -32 -34 -34 -34 -34 -33 -31 -30 -30 -30 -32 -34 -36 -36 -36 -35 -33 -32 -31 -30 -30 -31 -32 -32 -33 -32 -32 -31 -29 -29 -29 -30 -30 -31 -32 -33 -34 -34 -33 -32 -31 -30 -31 -31 -31 -31 -31 -31 -32 -32 -31 -30 -29 -29 -30 -31 -31 -31 -30 -30 -29 -29 -29 -29 -28 -28 -26 -25 -24 -23 -23 -23 -24 -24 -24 -24 -24 -25 -25 -25 -26 -27 -27 -27 -27 -26 -26 -25 -25 -25 -25 -24 -23 -23 -23 -24 -24 -25 -25 -26 -26 -27 -28 -30 -31 -32 -33 -34 -34 -34 -33 -33 -32 -32 -31 -30 -30 -30 -30 -32 -33 -34 -34 -33 -33 -32 -31 -30 -30 -29 -29 -29 -29 -28 -28 -28 -27 -26 -26 -25 -25 -25 -26 -26 -26 -26 -25 -24 -24 -23 -23 -23 -23 -24 -25 -27 -28 -29 -28 -27 -24 -22 -19 -17 -15 -14 -13 -13 -13 -14 -15 -15 -16 -17 -17 -17 -18 -18 -19 -20 -20 -20 -20 -20 -20 -20 -21 -21 -22 -22 -22 -22 -22 -22 -22 -22 -21 -20 -18 -16 -15 -14 -12 -11 -10 -8 -7 -6 -6 -5 -3 -2 -1 0 1 1 1 1 1 2 3 4 4 -9 -6 -7 -11 -15 -16 -14 -11 -10 -10 -12 -13 -13 -15 -19 -24 -26 -20 -11 -4 -3 -9 -13 -12 -10 -8 -9 -10 -10 -9 -10 -12 -15 -17 -19 -18 -15 -12 -10 -11 -11 -11 -10 -9 -8 -8 -8 -8 -7 -7 -7 -7 -7 -7 -6 -5 -4 -3 -3 -3 -3 -4 -4 -4 -2 1 3 5 7 8 9 8 7 5 5 4 3 0 -1 -1 1 4 8 13 19 25 31 37 43 49 52 53 52 51 41 35 31 28 25 22 22 23 24 23 19 18 19 20 18 14 6 -1 -7 -12 -16 -20 -22 -23 -23 -22 -21 -18 -16 -13 -12 -11 -10 -10 -10 -11 -11 -12 -14 -16 -19 -21 -23 -23 -22 -20 -19 -18 -18 -19 -21 -23 -25 -26 -28 -29 -30 -30 -31 -32 -32 -33 -33 -34 -34 -35 -36 -36 -36 -36 -36 -36 -35 -35 -35 -35 -35 -35 -36 -36 -35 -35 -34 -33 -33 -34 -34 -34 -34 -33 -32 -31 -30 -30 -31 -33 -34 -35 -35 -34 -33 -32 -31 -31 -32 -33 -35 -37 -38 -37 -36 -34 -33 -32 -32 -32 -32 -33 -34 -34 -34 -32 -31 -30 -29 -30 -30 -30 -31 -32 -33 -34 -34 -33 -32 -31 -31 -31 -31 -32 -32 -32 -33 -33 -33 -32 -31 -31 -30 -31 -31 -31 -31 -30 -30 -30 -30 -30 -29 -29 -28 -27 -26 -25 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -25 -26 -26 -27 -27 -27 -27 -26 -26 -26 -26 -25 -24 -24 -24 -24 -24 -24 -23 -23 -24 -24 -25 -26 -28 -29 -30 -31 -32 -33 -33 -33 -33 -32 -32 -31 -31 -30 -30 -30 -31 -31 -32 -32 -33 -33 -33 -33 -32 -31 -30 -29 -29 -28 -28 -28 -27 -26 -26 -25 -25 -25 -25 -25 -25 -26 -26 -26 -25 -24 -24 -23 -23 -23 -23 -24 -26 -27 -28 -28 -27 -26 -23 -20 -18 -16 -14 -13 -13 -13 -14 -14 -15 -16 -17 -17 -17 -18 -18 -19 -19 -20 -20 -20 -20 -20 -20 -20 -20 -21 -21 -21 -22 -22 -22 -22 -22 -22 -22 -21 -20 -19 -17 -15 -13 -11 -10 -8 -7 -6 -5 -3 -2 -1 -1 -1 -1 -0 1 2 3 3 3 3 -9 -5 -6 -9 -14 -17 -16 -13 -11 -10 -11 -12 -12 -14 -16 -21 -26 -23 -15 -6 -3 -6 -11 -11 -9 -7 -7 -9 -10 -10 -10 -11 -13 -15 -17 -17 -16 -13 -11 -11 -12 -13 -14 -13 -11 -9 -9 -8 -8 -7 -7 -7 -7 -6 -6 -6 -5 -4 -4 -3 -3 -4 -4 -4 -3 -1 3 7 10 12 14 14 13 11 10 9 9 7 5 4 4 3 3 5 9 16 23 31 40 43 45 44 42 37 27 23 22 21 20 19 19 20 22 22 19 18 20 22 20 15 9 3 -3 -9 -13 -18 -20 -22 -23 -23 -23 -21 -18 -16 -14 -13 -13 -13 -13 -13 -13 -13 -14 -16 -19 -21 -23 -24 -24 -22 -20 -19 -18 -19 -21 -23 -25 -27 -28 -29 -29 -30 -31 -32 -33 -33 -34 -34 -34 -35 -36 -36 -37 -37 -37 -36 -36 -36 -36 -36 -36 -36 -36 -36 -35 -35 -34 -34 -34 -34 -34 -35 -35 -34 -33 -32 -31 -30 -31 -33 -34 -35 -35 -34 -33 -32 -32 -32 -33 -34 -36 -38 -39 -38 -37 -36 -35 -34 -34 -33 -34 -35 -35 -36 -35 -33 -32 -31 -30 -31 -31 -31 -31 -32 -32 -33 -34 -33 -32 -32 -32 -32 -32 -33 -34 -34 -35 -35 -34 -34 -33 -32 -31 -31 -32 -31 -31 -30 -30 -30 -30 -30 -30 -29 -29 -28 -27 -26 -25 -24 -24 -24 -24 -24 -24 -24 -24 -24 -25 -25 -26 -26 -26 -26 -27 -27 -27 -27 -26 -26 -25 -25 -24 -24 -24 -23 -23 -23 -23 -23 -24 -25 -26 -27 -28 -30 -31 -31 -32 -32 -32 -32 -32 -32 -31 -31 -31 -30 -30 -30 -30 -30 -31 -33 -34 -34 -33 -32 -31 -30 -30 -29 -28 -27 -27 -26 -25 -25 -24 -24 -24 -24 -24 -25 -25 -25 -25 -25 -24 -24 -23 -23 -23 -24 -25 -26 -27 -28 -28 -27 -25 -22 -19 -16 -15 -14 -13 -13 -13 -14 -15 -16 -16 -17 -17 -17 -18 -18 -19 -19 -20 -20 -20 -20 -19 -19 -19 -19 -20 -20 -21 -21 -21 -22 -22 -22 -23 -23 -22 -21 -20 -18 -16 -14 -12 -10 -8 -6 -5 -3 -3 -2 -2 -2 -2 -1 -0 1 1 2 2 2 -10 -5 -4 -7 -12 -16 -17 -15 -13 -11 -11 -11 -12 -12 -14 -18 -24 -25 -18 -9 -3 -4 -10 -12 -10 -7 -5 -7 -9 -10 -9 -9 -10 -12 -14 -15 -15 -13 -10 -9 -10 -13 -14 -15 -13 -12 -10 -9 -9 -8 -7 -7 -6 -6 -6 -6 -5 -5 -5 -5 -4 -4 -4 -4 -4 -2 1 6 12 16 19 20 18 16 14 13 13 12 11 10 9 7 4 3 4 7 12 18 24 26 28 30 30 26 18 16 17 18 20 22 21 21 22 23 23 23 24 23 21 17 12 7 2 -4 -10 -15 -18 -20 -22 -23 -22 -21 -20 -18 -16 -15 -14 -14 -15 -15 -15 -15 -16 -17 -19 -21 -23 -25 -25 -24 -22 -20 -19 -20 -22 -24 -26 -27 -27 -28 -29 -30 -31 -32 -33 -33 -34 -34 -34 -35 -36 -36 -37 -37 -37 -37 -37 -37 -37 -37 -37 -37 -36 -36 -35 -35 -34 -34 -34 -34 -35 -35 -35 -35 -34 -33 -32 -31 -31 -32 -34 -34 -34 -34 -33 -32 -32 -33 -33 -35 -37 -38 -40 -40 -39 -38 -37 -36 -36 -36 -36 -37 -37 -37 -36 -34 -33 -32 -32 -32 -33 -33 -33 -33 -33 -33 -34 -33 -33 -33 -33 -33 -34 -34 -35 -35 -36 -35 -35 -34 -33 -33 -32 -32 -32 -31 -30 -30 -29 -29 -29 -29 -29 -29 -29 -29 -28 -27 -26 -25 -25 -24 -24 -24 -23 -24 -24 -24 -25 -25 -25 -25 -25 -26 -26 -26 -26 -26 -26 -26 -26 -25 -25 -24 -24 -24 -23 -23 -23 -23 -24 -25 -25 -26 -27 -28 -29 -30 -31 -31 -31 -31 -32 -32 -32 -32 -31 -31 -30 -29 -29 -29 -30 -31 -32 -33 -34 -34 -33 -32 -31 -30 -29 -28 -27 -26 -25 -24 -24 -23 -23 -23 -23 -24 -24 -25 -25 -25 -25 -24 -23 -23 -23 -24 -25 -26 -27 -28 -28 -28 -27 -24 -21 -18 -16 -14 -13 -13 -13 -14 -14 -15 -16 -16 -17 -17 -18 -18 -18 -19 -20 -20 -20 -20 -19 -19 -19 -19 -19 -19 -20 -20 -21 -21 -22 -22 -22 -23 -23 -22 -22 -20 -19 -16 -14 -11 -9 -7 -5 -4 -4 -3 -3 -3 -2 -2 -1 -1 -0 -0 0 1 -12 -6 -3 -4 -8 -13 -16 -17 -16 -14 -12 -12 -12 -11 -12 -14 -20 -24 -22 -14 -6 -2 -7 -11 -12 -9 -6 -5 -8 -9 -9 -9 -9 -10 -12 -13 -14 -13 -10 -8 -8 -10 -12 -14 -14 -13 -12 -11 -10 -9 -8 -7 -7 -6 -6 -6 -5 -5 -5 -5 -5 -4 -3 -3 -3 -3 -2 3 10 17 23 25 24 21 18 16 15 16 15 14 13 11 9 6 5 3 3 4 6 10 16 22 25 24 19 17 17 19 23 26 27 26 25 27 29 30 27 23 19 16 14 11 6 -0 -7 -12 -15 -18 -20 -21 -20 -20 -19 -17 -16 -14 -14 -14 -15 -16 -16 -17 -17 -18 -20 -22 -24 -25 -26 -25 -23 -22 -21 -21 -23 -24 -25 -26 -27 -27 -28 -29 -31 -31 -32 -32 -33 -33 -34 -34 -35 -36 -36 -36 -37 -37 -37 -38 -38 -38 -38 -37 -37 -36 -35 -34 -33 -33 -33 -34 -34 -34 -35 -35 -34 -33 -32 -32 -32 -33 -33 -34 -34 -33 -33 -32 -32 -33 -33 -35 -37 -39 -40 -41 -41 -40 -39 -38 -38 -38 -38 -39 -39 -39 -38 -36 -35 -35 -35 -35 -35 -35 -34 -34 -34 -34 -34 -34 -34 -34 -35 -35 -35 -35 -35 -35 -35 -35 -34 -34 -33 -33 -32 -32 -32 -31 -30 -29 -29 -28 -28 -28 -28 -29 -29 -28 -28 -28 -27 -26 -26 -25 -24 -24 -24 -24 -24 -24 -25 -25 -25 -24 -24 -24 -25 -25 -25 -25 -26 -26 -25 -25 -25 -25 -24 -24 -24 -24 -24 -24 -24 -25 -25 -26 -27 -28 -28 -29 -29 -30 -30 -30 -31 -32 -32 -32 -32 -31 -30 -30 -29 -28 -28 -29 -30 -31 -32 -33 -33 -32 -31 -30 -29 -28 -27 -26 -25 -24 -23 -23 -23 -23 -23 -23 -23 -24 -24 -25 -25 -24 -24 -23 -24 -24 -25 -26 -27 -28 -28 -29 -28 -27 -24 -20 -17 -15 -14 -13 -13 -13 -14 -14 -15 -16 -16 -17 -17 -18 -18 -18 -19 -19 -20 -20 -20 -19 -18 -18 -18 -19 -19 -20 -20 -20 -21 -21 -21 -22 -22 -22 -23 -22 -21 -19 -16 -13 -11 -8 -7 -5 -5 -4 -4 -3 -3 -2 -2 -2 -2 -1 -1 -0 -15 -9 -3 -1 -4 -10 -14 -16 -16 -15 -14 -14 -13 -12 -11 -12 -15 -21 -24 -20 -11 -3 -3 -9 -12 -11 -8 -5 -6 -8 -9 -8 -8 -8 -9 -11 -12 -12 -10 -7 -5 -6 -8 -11 -13 -13 -13 -11 -10 -10 -9 -9 -8 -8 -7 -6 -5 -5 -5 -5 -6 -5 -3 -2 -0 -1 -2 -0 5 14 23 28 27 25 22 19 17 17 17 17 16 15 13 11 8 5 2 0 0 4 12 20 26 29 26 22 21 22 26 30 31 31 31 31 33 32 29 23 17 14 15 13 10 4 -2 -9 -13 -16 -17 -17 -17 -17 -16 -15 -14 -13 -12 -12 -13 -14 -16 -17 -18 -19 -21 -22 -24 -25 -26 -26 -25 -23 -23 -22 -23 -24 -25 -25 -26 -26 -27 -28 -29 -30 -30 -30 -31 -31 -32 -33 -34 -34 -35 -35 -36 -36 -37 -37 -38 -38 -39 -38 -37 -36 -35 -34 -33 -32 -32 -32 -33 -33 -34 -34 -34 -34 -33 -32 -32 -33 -33 -34 -33 -33 -33 -32 -32 -33 -33 -35 -36 -38 -40 -42 -42 -41 -41 -40 -40 -39 -40 -41 -41 -41 -40 -39 -38 -37 -37 -37 -37 -37 -36 -36 -36 -35 -35 -35 -36 -36 -36 -36 -36 -35 -35 -35 -35 -34 -34 -33 -33 -33 -33 -32 -32 -31 -30 -29 -28 -28 -27 -27 -27 -28 -28 -28 -28 -28 -27 -27 -26 -25 -25 -24 -24 -24 -24 -24 -24 -24 -24 -24 -23 -23 -23 -23 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -25 -25 -25 -26 -26 -27 -28 -28 -29 -29 -29 -30 -30 -31 -31 -31 -31 -31 -31 -30 -29 -28 -28 -27 -28 -29 -30 -31 -31 -31 -31 -30 -29 -27 -26 -25 -24 -23 -23 -22 -22 -22 -22 -22 -22 -22 -23 -24 -24 -24 -24 -24 -24 -25 -25 -26 -27 -28 -28 -29 -29 -28 -26 -23 -20 -17 -15 -14 -13 -13 -13 -13 -14 -15 -15 -16 -17 -17 -18 -18 -18 -19 -19 -20 -19 -19 -19 -18 -18 -18 -18 -19 -19 -20 -20 -20 -21 -21 -21 -22 -22 -22 -21 -20 -18 -15 -13 -10 -8 -6 -5 -4 -3 -3 -3 -2 -3 -2 -2 -2 -1 -1 -19 -13 -6 -1 -1 -6 -11 -14 -15 -16 -15 -15 -15 -14 -12 -11 -12 -18 -22 -23 -18 -8 -3 -5 -9 -12 -11 -7 -6 -6 -8 -8 -8 -7 -8 -9 -10 -11 -10 -7 -5 -3 -4 -6 -9 -11 -12 -11 -10 -10 -9 -9 -9 -9 -8 -8 -7 -6 -5 -6 -7 -7 -6 -3 1 2 0 -0 2 8 18 27 29 28 25 22 20 20 20 20 19 18 17 14 12 9 6 3 1 2 6 13 21 28 28 25 22 21 24 29 33 35 34 33 34 34 30 23 17 16 17 16 13 9 3 -4 -9 -13 -14 -14 -13 -13 -12 -12 -11 -10 -9 -8 -9 -10 -12 -14 -15 -17 -19 -21 -23 -25 -26 -26 -25 -24 -24 -23 -23 -23 -24 -24 -25 -26 -26 -27 -27 -27 -27 -28 -28 -29 -30 -30 -31 -32 -32 -33 -34 -34 -35 -36 -37 -38 -39 -39 -38 -37 -36 -34 -33 -32 -31 -31 -31 -31 -32 -33 -33 -33 -33 -33 -33 -33 -33 -34 -34 -33 -33 -33 -33 -33 -34 -34 -36 -38 -40 -42 -43 -43 -42 -41 -41 -41 -42 -42 -43 -43 -42 -42 -41 -40 -40 -39 -39 -38 -38 -38 -38 -37 -37 -37 -37 -37 -37 -37 -36 -36 -35 -35 -34 -34 -33 -33 -33 -33 -33 -32 -32 -31 -31 -30 -29 -28 -27 -27 -27 -27 -27 -27 -27 -27 -27 -27 -26 -26 -25 -25 -24 -24 -24 -24 -24 -24 -23 -23 -23 -23 -22 -22 -22 -22 -22 -22 -23 -23 -23 -24 -24 -24 -24 -25 -25 -25 -25 -25 -25 -26 -26 -26 -27 -27 -28 -28 -28 -29 -29 -30 -30 -31 -31 -31 -30 -30 -29 -28 -28 -27 -27 -27 -27 -28 -29 -29 -29 -29 -28 -27 -25 -24 -24 -23 -22 -22 -21 -21 -21 -21 -21 -22 -22 -22 -23 -24 -24 -24 -24 -25 -26 -27 -27 -28 -28 -29 -29 -29 -28 -25 -22 -19 -16 -14 -14 -13 -13 -13 -13 -13 -14 -15 -16 -16 -17 -18 -18 -18 -19 -19 -19 -19 -19 -18 -18 -18 -18 -18 -19 -19 -19 -20 -20 -20 -21 -21 -21 -21 -21 -20 -19 -17 -15 -13 -10 -8 -7 -5 -4 -3 -3 -3 -2 -2 -2 -2 -2 -1 -20 -18 -11 -4 0 -2 -7 -11 -13 -14 -15 -16 -16 -16 -15 -13 -12 -14 -19 -23 -23 -16 -6 -3 -5 -9 -12 -10 -7 -5 -6 -7 -8 -7 -7 -7 -8 -9 -10 -8 -6 -2 -1 -2 -4 -7 -9 -9 -9 -9 -8 -8 -8 -9 -9 -9 -8 -7 -6 -6 -7 -9 -9 -7 -3 1 2 1 2 5 13 23 29 31 29 26 23 23 23 22 22 21 20 18 16 13 10 7 4 2 3 6 13 20 24 23 21 20 21 25 30 34 36 36 35 36 36 33 26 19 16 16 17 15 10 2 -5 -9 -10 -10 -8 -7 -7 -7 -7 -6 -5 -4 -4 -5 -6 -8 -10 -12 -15 -18 -20 -23 -24 -25 -25 -25 -24 -23 -23 -23 -24 -24 -24 -25 -25 -25 -25 -25 -25 -25 -25 -26 -27 -28 -29 -29 -30 -30 -31 -31 -32 -33 -35 -36 -37 -38 -38 -38 -37 -35 -33 -32 -31 -30 -30 -29 -30 -31 -31 -32 -32 -32 -32 -33 -33 -33 -34 -33 -33 -33 -33 -33 -34 -35 -36 -38 -40 -43 -44 -44 -44 -43 -43 -43 -43 -44 -45 -45 -45 -44 -43 -43 -42 -41 -40 -40 -40 -40 -39 -39 -38 -38 -38 -38 -38 -37 -37 -36 -35 -35 -34 -34 -33 -33 -33 -32 -32 -32 -32 -32 -31 -31 -29 -28 -27 -27 -26 -26 -26 -27 -27 -27 -27 -26 -26 -26 -25 -25 -25 -24 -24 -24 -24 -23 -23 -23 -23 -22 -22 -22 -21 -21 -21 -21 -21 -21 -22 -22 -23 -23 -24 -25 -25 -25 -25 -25 -25 -25 -25 -26 -26 -26 -27 -27 -28 -28 -29 -29 -29 -29 -30 -30 -30 -30 -29 -29 -28 -27 -26 -25 -25 -25 -26 -26 -27 -27 -26 -25 -24 -23 -23 -22 -22 -21 -21 -20 -20 -20 -21 -21 -21 -21 -22 -22 -23 -24 -24 -25 -26 -26 -27 -28 -28 -29 -29 -29 -29 -27 -24 -21 -18 -16 -15 -14 -13 -13 -13 -13 -13 -13 -14 -15 -16 -17 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -19 -19 -19 -19 -20 -20 -20 -20 -21 -21 -20 -19 -17 -16 -14 -12 -10 -8 -6 -5 -4 -3 -2 -2 -2 -3 -3 -2 -19 -21 -18 -11 -3 0 -3 -8 -11 -12 -13 -14 -15 -17 -17 -16 -14 -14 -17 -21 -25 -24 -15 -6 -2 -5 -9 -12 -10 -7 -5 -5 -6 -7 -7 -6 -7 -7 -8 -8 -7 -4 -0 2 1 -1 -4 -6 -6 -7 -6 -6 -6 -7 -7 -8 -7 -7 -6 -6 -6 -8 -10 -10 -8 -3 -0 1 1 4 11 20 28 32 32 30 27 26 26 26 25 24 24 22 21 19 16 13 10 7 6 6 9 14 17 18 18 17 18 21 26 31 35 38 39 39 40 37 31 23 18 18 19 19 16 9 2 -3 -6 -5 -4 -2 -1 -1 -1 -1 -1 -0 1 1 1 -0 -2 -5 -8 -12 -15 -18 -21 -23 -23 -24 -24 -23 -23 -23 -23 -23 -24 -24 -24 -24 -23 -23 -23 -23 -23 -24 -25 -25 -26 -27 -27 -28 -28 -28 -29 -30 -31 -32 -34 -36 -37 -37 -36 -35 -34 -32 -31 -30 -29 -28 -28 -29 -29 -30 -31 -31 -32 -32 -33 -33 -33 -33 -33 -33 -33 -34 -35 -35 -36 -38 -40 -43 -44 -45 -45 -45 -44 -44 -45 -45 -46 -47 -47 -46 -45 -44 -43 -43 -42 -42 -42 -41 -41 -40 -39 -39 -38 -38 -38 -37 -37 -37 -36 -35 -35 -35 -34 -33 -33 -32 -32 -32 -32 -32 -32 -31 -30 -29 -28 -27 -26 -26 -26 -26 -26 -26 -26 -26 -25 -25 -25 -25 -24 -24 -24 -24 -23 -23 -23 -23 -23 -22 -22 -22 -21 -21 -21 -20 -20 -20 -20 -21 -21 -22 -23 -24 -24 -25 -25 -25 -25 -25 -25 -25 -25 -25 -25 -26 -26 -27 -27 -28 -28 -28 -28 -28 -28 -29 -29 -28 -28 -27 -25 -25 -24 -24 -24 -24 -24 -24 -24 -24 -23 -22 -22 -21 -21 -21 -21 -20 -20 -20 -20 -20 -21 -20 -21 -21 -22 -23 -24 -25 -25 -26 -27 -28 -28 -29 -29 -30 -29 -28 -26 -23 -20 -17 -16 -15 -14 -14 -13 -13 -12 -13 -13 -14 -15 -16 -17 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -19 -19 -20 -20 -21 -21 -21 -20 -20 -18 -17 -15 -13 -11 -9 -7 -5 -4 -3 -3 -3 -4 -4 -4 -16 -21 -21 -17 -10 -2 -1 -5 -8 -10 -11 -11 -13 -15 -17 -17 -17 -15 -16 -19 -23 -27 -24 -14 -5 -2 -4 -10 -12 -10 -7 -4 -4 -5 -5 -6 -6 -6 -7 -8 -7 -6 -2 3 6 6 4 1 -2 -3 -3 -2 -2 -2 -3 -4 -4 -4 -5 -5 -5 -7 -9 -10 -9 -6 -3 -2 -1 1 7 15 25 32 35 34 32 31 30 29 28 28 27 26 26 24 22 20 17 14 12 11 12 14 16 17 18 18 19 20 23 28 33 38 39 38 38 38 36 32 27 23 21 21 21 17 10 4 0 -0 1 3 5 6 6 5 4 4 5 6 6 6 5 3 -0 -4 -8 -12 -15 -18 -20 -22 -22 -23 -23 -23 -23 -22 -22 -22 -22 -22 -22 -22 -21 -21 -22 -22 -23 -23 -24 -24 -25 -25 -25 -25 -25 -26 -27 -28 -30 -32 -33 -34 -35 -34 -33 -32 -31 -30 -28 -28 -27 -28 -28 -29 -30 -31 -31 -32 -32 -32 -32 -32 -32 -33 -33 -34 -35 -36 -37 -38 -40 -43 -45 -46 -46 -46 -45 -45 -46 -46 -47 -47 -47 -47 -46 -45 -45 -44 -44 -43 -43 -43 -42 -41 -39 -39 -38 -38 -37 -37 -37 -37 -37 -37 -36 -35 -35 -34 -32 -32 -31 -31 -31 -31 -31 -30 -30 -29 -28 -27 -27 -26 -26 -26 -26 -26 -25 -25 -25 -24 -24 -24 -24 -24 -24 -23 -23 -23 -23 -23 -23 -23 -22 -22 -22 -21 -21 -21 -20 -20 -20 -20 -20 -21 -21 -22 -23 -24 -25 -25 -25 -25 -25 -25 -24 -24 -24 -25 -25 -25 -26 -26 -27 -27 -27 -27 -27 -27 -27 -27 -27 -26 -25 -24 -23 -23 -22 -22 -22 -23 -23 -22 -22 -21 -21 -21 -20 -20 -20 -20 -19 -19 -19 -20 -20 -20 -20 -20 -20 -21 -22 -23 -24 -26 -27 -28 -28 -29 -30 -30 -30 -29 -28 -26 -22 -19 -17 -16 -15 -15 -14 -13 -13 -13 -13 -13 -14 -15 -16 -17 -18 -18 -18 -18 -18 -17 -17 -17 -17 -18 -18 -18 -18 -18 -18 -18 -18 -18 -19 -20 -20 -21 -21 -21 -21 -20 -19 -17 -15 -13 -11 -10 -8 -6 -5 -4 -4 -3 -4 -4 -12 -18 -22 -22 -17 -9 -3 -3 -6 -9 -9 -9 -9 -11 -13 -16 -18 -18 -17 -18 -21 -26 -29 -25 -15 -5 -1 -4 -10 -13 -11 -8 -5 -3 -4 -4 -4 -5 -5 -7 -8 -7 -5 -0 6 10 10 8 5 3 2 2 2 2 3 2 1 -2 -4 -5 -5 -5 -6 -7 -7 -6 -5 -3 -2 -1 2 9 19 29 36 39 38 36 34 32 31 31 30 30 30 29 27 26 23 21 19 17 17 18 19 20 21 22 23 24 25 28 32 36 36 37 37 39 41 38 32 28 25 25 24 22 17 11 7 5 6 8 10 12 13 12 11 9 9 10 11 12 11 10 7 4 0 -4 -8 -11 -14 -17 -18 -20 -20 -21 -21 -21 -21 -21 -20 -20 -20 -20 -20 -20 -21 -21 -21 -22 -22 -22 -22 -22 -22 -22 -22 -22 -23 -24 -25 -27 -29 -30 -31 -31 -32 -31 -30 -29 -28 -27 -27 -27 -27 -28 -29 -30 -31 -32 -32 -32 -32 -31 -31 -32 -32 -33 -35 -36 -37 -38 -40 -42 -44 -45 -46 -46 -46 -46 -46 -46 -46 -47 -47 -46 -46 -45 -45 -45 -44 -44 -44 -43 -42 -41 -39 -38 -37 -36 -36 -36 -37 -37 -37 -37 -36 -35 -34 -33 -32 -31 -30 -30 -30 -30 -30 -30 -29 -29 -28 -28 -27 -27 -27 -27 -26 -26 -25 -25 -24 -24 -24 -24 -24 -24 -24 -23 -23 -23 -23 -22 -22 -23 -23 -23 -22 -22 -22 -21 -21 -20 -20 -20 -20 -20 -20 -21 -22 -22 -23 -24 -24 -25 -25 -25 -25 -24 -24 -24 -24 -24 -25 -25 -26 -26 -26 -26 -26 -26 -26 -26 -26 -25 -25 -24 -23 -23 -22 -22 -21 -21 -21 -21 -21 -21 -20 -20 -19 -19 -19 -19 -19 -19 -19 -19 -20 -20 -20 -19 -19 -19 -20 -21 -23 -24 -26 -27 -28 -29 -30 -30 -30 -30 -29 -28 -25 -22 -19 -17 -16 -15 -15 -14 -14 -14 -13 -13 -13 -14 -15 -16 -17 -18 -18 -18 -18 -17 -17 -17 -17 -17 -18 -18 -18 -18 -17 -17 -17 -18 -18 -19 -19 -20 -21 -21 -21 -21 -20 -19 -17 -16 -14 -13 -11 -9 -7 -6 -4 -3 -3 -3 -9 -13 -19 -22 -22 -17 -8 -4 -4 -7 -9 -8 -7 -7 -9 -12 -15 -17 -18 -18 -20 -23 -27 -29 -25 -16 -7 -1 -5 -10 -13 -12 -9 -6 -4 -3 -3 -4 -4 -5 -6 -8 -8 -6 -0 7 11 12 11 8 7 5 5 5 6 5 3 -0 -3 -4 -3 -2 -2 -2 -3 -4 -3 -3 -2 -1 -0 4 12 23 33 40 43 41 38 35 34 33 33 33 33 32 31 30 28 26 24 22 21 21 22 23 24 26 28 30 32 35 36 37 38 39 39 42 43 40 35 32 30 28 26 25 22 18 14 11 11 12 15 18 19 19 18 16 15 15 16 16 16 15 13 11 7 4 0 -3 -7 -10 -12 -14 -16 -17 -17 -18 -18 -18 -18 -18 -18 -18 -18 -18 -19 -19 -19 -19 -19 -19 -19 -19 -18 -19 -19 -19 -20 -20 -22 -23 -24 -26 -27 -28 -28 -29 -29 -28 -27 -27 -26 -26 -26 -27 -29 -30 -31 -32 -32 -32 -31 -30 -30 -30 -31 -32 -34 -35 -36 -38 -40 -41 -43 -44 -45 -45 -45 -45 -45 -45 -45 -45 -45 -45 -45 -44 -45 -45 -45 -44 -44 -44 -42 -41 -39 -37 -36 -35 -34 -35 -35 -36 -36 -35 -34 -33 -32 -31 -30 -29 -29 -29 -29 -29 -28 -28 -28 -28 -28 -28 -28 -28 -27 -27 -27 -26 -26 -25 -24 -24 -24 -24 -24 -24 -24 -23 -23 -23 -23 -22 -22 -23 -23 -23 -23 -23 -22 -22 -22 -21 -21 -20 -20 -20 -20 -20 -21 -21 -22 -22 -23 -24 -24 -25 -25 -25 -24 -24 -24 -24 -24 -24 -25 -25 -25 -25 -25 -24 -24 -24 -25 -25 -25 -24 -24 -23 -23 -22 -21 -21 -21 -21 -20 -20 -19 -19 -18 -18 -18 -18 -18 -18 -18 -19 -19 -19 -20 -19 -19 -18 -18 -19 -20 -22 -24 -26 -28 -29 -30 -30 -31 -31 -30 -29 -27 -24 -22 -19 -18 -17 -16 -15 -15 -14 -14 -14 -13 -13 -14 -15 -16 -17 -17 -18 -18 -18 -17 -17 -17 -17 -17 -18 -18 -18 -18 -17 -17 -17 -17 -18 -18 -19 -19 -20 -20 -20 -20 -19 -18 -17 -16 -15 -13 -12 -10 -8 -6 -4 -3 -3 -8 -10 -14 -19 -23 -22 -15 -7 -4 -6 -9 -10 -9 -8 -7 -8 -11 -13 -15 -16 -17 -19 -23 -28 -29 -26 -17 -7 -2 -5 -10 -13 -13 -10 -7 -5 -4 -3 -3 -3 -4 -6 -8 -9 -7 -2 4 9 12 12 10 8 7 7 6 5 2 -1 -4 -4 -2 1 2 2 2 1 -0 -1 -1 -1 -0 2 6 14 25 36 44 45 42 38 36 35 35 35 35 34 33 32 30 28 26 25 24 23 23 25 27 29 31 34 39 43 45 46 47 46 46 47 46 42 38 36 34 32 29 26 25 23 20 17 15 16 18 21 24 25 24 23 21 20 20 20 20 20 18 16 14 11 8 4 1 -3 -6 -8 -10 -12 -13 -14 -15 -15 -15 -16 -16 -16 -16 -16 -16 -17 -17 -17 -17 -16 -16 -15 -15 -15 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -26 -26 -26 -26 -25 -25 -25 -26 -27 -28 -30 -30 -31 -31 -30 -30 -30 -30 -30 -31 -33 -34 -35 -37 -38 -39 -40 -41 -42 -42 -42 -42 -42 -42 -42 -42 -42 -42 -42 -42 -43 -43 -43 -44 -44 -43 -42 -40 -38 -36 -35 -33 -33 -33 -33 -33 -33 -32 -31 -30 -29 -28 -27 -27 -27 -28 -27 -27 -27 -27 -28 -28 -28 -28 -28 -28 -28 -28 -28 -27 -27 -26 -25 -24 -24 -24 -24 -24 -24 -24 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -23 -22 -22 -21 -21 -20 -20 -20 -20 -20 -20 -21 -21 -22 -22 -23 -24 -24 -25 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -23 -23 -23 -23 -24 -24 -24 -24 -24 -23 -23 -22 -22 -21 -21 -20 -20 -19 -18 -17 -17 -16 -16 -16 -17 -17 -18 -18 -18 -19 -19 -19 -18 -17 -17 -18 -19 -21 -23 -25 -27 -29 -30 -30 -31 -31 -30 -28 -26 -24 -21 -20 -18 -17 -16 -15 -15 -15 -14 -14 -13 -13 -14 -15 -16 -16 -17 -18 -18 -18 -17 -17 -17 -18 -18 -18 -18 -18 -17 -17 -17 -17 -17 -17 -17 -18 -18 -19 -19 -19 -19 -19 -19 -18 -17 -15 -14 -12 -10 -8 -6 -5 -3 -8 -8 -11 -15 -20 -22 -19 -12 -6 -4 -7 -10 -11 -9 -8 -8 -9 -10 -12 -14 -15 -16 -17 -22 -27 -29 -26 -17 -7 -4 -5 -9 -13 -13 -11 -8 -6 -4 -3 -2 -2 -3 -6 -8 -11 -10 -6 -0 6 10 10 10 8 7 6 4 0 -3 -5 -4 -2 2 5 6 6 5 3 2 1 -0 0 1 2 5 13 24 36 43 43 41 39 37 36 35 35 34 34 32 30 28 27 26 26 25 25 27 29 31 33 35 40 48 53 54 54 56 56 54 50 45 41 40 39 37 35 32 29 27 25 23 20 19 22 25 27 29 29 28 27 26 25 24 24 24 23 21 19 17 14 11 8 4 1 -1 -3 -5 -7 -9 -10 -11 -11 -12 -12 -13 -13 -13 -14 -14 -14 -14 -14 -14 -13 -12 -12 -12 -12 -13 -13 -14 -16 -17 -19 -20 -21 -22 -23 -24 -24 -24 -24 -24 -24 -24 -24 -24 -25 -26 -27 -28 -29 -29 -29 -29 -29 -29 -30 -31 -32 -33 -34 -35 -36 -36 -37 -38 -38 -38 -38 -38 -39 -39 -39 -39 -39 -39 -39 -39 -40 -40 -41 -42 -42 -42 -42 -40 -38 -36 -34 -33 -32 -31 -31 -31 -30 -30 -28 -27 -26 -25 -25 -25 -25 -26 -26 -26 -26 -26 -27 -27 -27 -27 -28 -28 -28 -29 -29 -28 -28 -27 -26 -25 -24 -24 -24 -24 -24 -24 -24 -24 -23 -23 -24 -24 -24 -24 -24 -24 -23 -23 -23 -22 -21 -21 -20 -20 -19 -19 -19 -19 -20 -20 -20 -21 -22 -22 -23 -24 -24 -24 -24 -24 -24 -23 -23 -23 -23 -23 -22 -22 -22 -22 -22 -22 -23 -24 -24 -24 -24 -24 -23 -23 -22 -21 -21 -20 -19 -18 -17 -16 -15 -15 -15 -15 -15 -16 -17 -17 -18 -18 -18 -18 -17 -16 -16 -17 -18 -20 -22 -24 -26 -28 -29 -30 -30 -30 -29 -27 -25 -23 -21 -20 -18 -17 -16 -15 -15 -14 -14 -14 -13 -13 -14 -14 -15 -16 -16 -17 -17 -17 -17 -18 -18 -18 -18 -17 -17 -17 -17 -17 -17 -17 -16 -16 -17 -17 -17 -18 -18 -19 -19 -19 -19 -18 -16 -15 -14 -12 -11 -9 -7 -5 -9 -8 -10 -13 -16 -20 -21 -16 -9 -4 -4 -8 -10 -10 -10 -9 -9 -10 -11 -12 -13 -14 -14 -17 -21 -26 -29 -26 -18 -9 -5 -5 -8 -11 -12 -11 -10 -8 -6 -4 -2 -2 -3 -5 -8 -11 -12 -10 -5 1 5 8 8 7 5 4 1 -3 -4 -4 -1 2 5 7 8 8 6 4 2 1 2 2 1 -0 1 7 15 25 32 36 38 39 38 36 35 34 33 32 30 29 28 27 27 28 28 29 31 32 33 36 44 53 58 57 57 58 57 53 47 41 39 39 43 46 48 45 37 31 28 27 25 23 25 28 31 32 33 33 32 31 29 28 28 27 26 25 23 21 19 16 13 10 8 5 3 1 -1 -3 -4 -6 -7 -7 -8 -9 -9 -10 -10 -11 -11 -12 -11 -11 -10 -10 -9 -9 -9 -10 -10 -11 -12 -14 -15 -17 -19 -21 -22 -22 -22 -22 -22 -22 -22 -22 -22 -22 -22 -22 -23 -24 -25 -26 -27 -27 -28 -29 -29 -30 -31 -32 -32 -33 -33 -33 -34 -34 -34 -34 -35 -35 -35 -35 -35 -36 -36 -36 -36 -36 -36 -37 -38 -39 -40 -40 -40 -39 -37 -36 -34 -33 -32 -31 -30 -29 -28 -27 -26 -25 -24 -23 -23 -23 -23 -23 -24 -24 -25 -26 -26 -26 -27 -27 -28 -28 -29 -29 -29 -29 -28 -28 -27 -26 -25 -24 -24 -24 -24 -24 -24 -24 -24 -24 -25 -25 -25 -25 -25 -24 -24 -24 -23 -22 -21 -21 -20 -19 -19 -19 -19 -19 -19 -19 -19 -19 -20 -20 -21 -22 -22 -23 -23 -23 -23 -22 -22 -22 -21 -21 -21 -21 -20 -20 -20 -21 -21 -22 -23 -23 -24 -24 -24 -24 -23 -23 -22 -21 -19 -18 -17 -16 -15 -14 -14 -13 -13 -14 -14 -15 -16 -17 -17 -17 -17 -16 -15 -15 -15 -17 -18 -21 -23 -25 -27 -28 -29 -29 -28 -27 -25 -23 -22 -20 -19 -18 -17 -16 -15 -14 -14 -14 -14 -13 -13 -14 -14 -14 -15 -16 -16 -16 -17 -17 -17 -17 -17 -17 -17 -17 -17 -17 -17 -17 -17 -16 -16 -16 -16 -16 -17 -17 -18 -18 -18 -18 -17 -16 -15 -14 -13 -11 -10 -8 -9 -9 -9 -11 -14 -18 -21 -19 -13 -6 -2 -3 -7 -9 -9 -9 -9 -10 -10 -11 -12 -13 -14 -14 -17 -20 -25 -28 -27 -20 -12 -6 -4 -6 -9 -12 -12 -11 -10 -8 -5 -4 -3 -3 -4 -7 -10 -12 -12 -10 -5 0 4 5 5 4 4 3 1 -0 -1 -0 2 4 6 7 7 4 2 1 2 3 1 1 -1 -2 -2 0 5 11 18 25 31 33 34 34 33 32 31 29 28 28 29 29 31 33 34 34 33 33 37 43 44 40 43 49 49 45 43 44 46 42 42 45 48 46 39 34 31 31 30 29 29 31 34 36 37 38 37 36 34 33 32 31 30 29 27 25 23 21 18 15 13 11 9 7 5 3 2 0 -1 -2 -3 -4 -5 -6 -6 -7 -8 -8 -8 -8 -8 -7 -7 -7 -7 -7 -7 -8 -9 -10 -12 -14 -16 -18 -20 -20 -21 -21 -20 -20 -20 -20 -20 -20 -19 -19 -19 -20 -21 -22 -23 -25 -26 -27 -28 -29 -30 -30 -30 -30 -31 -31 -31 -31 -31 -31 -31 -31 -32 -32 -32 -32 -33 -32 -32 -32 -32 -33 -34 -35 -36 -37 -37 -37 -36 -35 -34 -33 -32 -31 -30 -29 -28 -27 -26 -24 -23 -22 -21 -21 -21 -21 -22 -23 -24 -25 -25 -26 -26 -27 -28 -28 -29 -29 -29 -29 -29 -28 -28 -27 -26 -25 -24 -24 -24 -24 -25 -25 -25 -26 -26 -26 -26 -25 -25 -25 -25 -24 -24 -23 -22 -21 -20 -19 -18 -18 -18 -18 -18 -18 -18 -18 -18 -19 -19 -20 -20 -21 -21 -21 -21 -21 -20 -20 -20 -19 -19 -19 -19 -19 -19 -19 -20 -20 -21 -22 -22 -23 -23 -24 -24 -23 -23 -22 -21 -19 -18 -16 -15 -14 -13 -12 -12 -12 -12 -12 -13 -14 -15 -16 -16 -15 -15 -14 -14 -14 -15 -17 -19 -21 -23 -25 -26 -27 -27 -26 -25 -23 -21 -20 -19 -18 -17 -16 -15 -14 -14 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -15 -15 -16 -16 -17 -17 -17 -17 -17 -17 -17 -17 -17 -17 -17 -16 -15 -15 -15 -15 -16 -16 -17 -18 -18 -18 -17 -17 -15 -14 -13 -12 -10 -9 -9 -9 -10 -12 -15 -19 -20 -17 -11 -5 -2 -3 -5 -6 -7 -8 -9 -10 -10 -12 -13 -13 -14 -14 -16 -19 -24 -28 -28 -23 -16 -8 -4 -5 -7 -11 -13 -13 -12 -10 -7 -6 -4 -4 -4 -6 -8 -10 -11 -10 -7 -3 0 2 3 5 5 4 4 2 1 1 2 3 5 6 5 3 1 0 1 1 2 2 -1 -4 -7 -9 -8 -3 4 12 20 27 33 35 34 32 29 27 27 29 30 30 31 31 29 28 28 27 28 27 26 28 33 36 37 39 42 43 41 40 41 44 45 42 39 37 34 30 29 32 35 38 40 42 43 42 41 40 38 37 35 34 32 31 29 27 25 22 20 18 16 14 13 11 9 7 6 5 4 3 2 1 -1 -2 -3 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -6 -6 -8 -9 -12 -14 -16 -18 -19 -19 -19 -19 -18 -18 -18 -17 -16 -16 -16 -16 -17 -18 -20 -21 -23 -24 -26 -27 -27 -28 -28 -28 -28 -29 -29 -29 -29 -29 -29 -29 -29 -30 -30 -30 -30 -30 -29 -29 -29 -29 -30 -31 -33 -34 -34 -34 -34 -34 -33 -33 -32 -31 -31 -30 -29 -27 -26 -25 -23 -22 -20 -20 -20 -20 -21 -22 -23 -24 -24 -25 -26 -26 -27 -28 -29 -29 -29 -29 -29 -28 -28 -27 -27 -25 -24 -24 -24 -24 -24 -25 -26 -26 -27 -27 -26 -26 -26 -26 -26 -26 -25 -24 -23 -22 -21 -19 -18 -17 -17 -16 -16 -16 -17 -17 -17 -18 -18 -18 -19 -19 -19 -19 -19 -19 -19 -19 -19 -18 -18 -18 -17 -17 -18 -18 -18 -19 -19 -20 -20 -21 -22 -22 -23 -23 -23 -22 -21 -20 -19 -17 -16 -15 -13 -12 -11 -10 -10 -10 -10 -11 -13 -14 -14 -14 -14 -13 -13 -12 -12 -13 -15 -17 -20 -22 -23 -25 -25 -25 -24 -22 -20 -19 -18 -17 -17 -16 -15 -14 -13 -13 -12 -12 -12 -12 -12 -12 -12 -13 -13 -13 -14 -14 -15 -15 -16 -16 -17 -17 -17 -17 -17 -17 -17 -17 -17 -16 -15 -14 -14 -14 -14 -15 -16 -17 -18 -18 -18 -17 -16 -14 -13 -12 -9 -9 -8 -9 -10 -12 -16 -19 -20 -16 -11 -5 -3 -2 -3 -3 -4 -6 -7 -9 -10 -11 -12 -13 -13 -14 -15 -18 -22 -27 -29 -27 -20 -12 -6 -4 -5 -9 -12 -13 -12 -11 -9 -7 -6 -5 -5 -6 -7 -9 -9 -8 -7 -4 -2 1 3 4 5 6 5 4 2 2 2 4 6 6 5 3 1 0 1 2 2 2 -0 -4 -8 -11 -11 -10 -5 3 12 21 27 30 29 27 25 24 24 25 26 26 26 25 25 23 21 20 20 21 22 26 29 33 37 41 43 42 40 41 42 44 45 44 42 39 35 32 34 37 41 44 45 46 46 46 45 43 42 40 38 36 34 33 30 28 26 24 22 21 19 18 16 15 13 12 11 9 8 7 6 5 3 2 1 -1 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -3 -4 -5 -7 -9 -12 -14 -15 -16 -17 -17 -16 -16 -15 -14 -13 -13 -13 -13 -13 -14 -16 -18 -19 -21 -22 -23 -23 -24 -25 -26 -26 -27 -27 -27 -27 -27 -27 -28 -28 -28 -29 -29 -28 -28 -27 -26 -26 -26 -27 -28 -29 -30 -31 -31 -31 -31 -32 -32 -31 -31 -31 -30 -29 -28 -27 -26 -24 -22 -21 -20 -19 -19 -20 -21 -22 -23 -24 -24 -25 -26 -27 -28 -28 -29 -29 -29 -28 -28 -27 -27 -27 -26 -25 -24 -23 -23 -24 -25 -26 -26 -27 -27 -27 -27 -27 -27 -27 -27 -26 -26 -25 -24 -23 -21 -20 -18 -17 -16 -15 -15 -16 -16 -17 -17 -17 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -17 -17 -17 -18 -18 -18 -18 -18 -19 -19 -20 -20 -21 -21 -21 -21 -21 -20 -19 -18 -17 -15 -14 -13 -12 -10 -9 -8 -8 -8 -9 -11 -12 -12 -12 -12 -11 -11 -11 -11 -11 -13 -15 -18 -20 -22 -23 -23 -23 -21 -19 -18 -17 -16 -15 -15 -15 -14 -13 -12 -12 -11 -11 -11 -11 -11 -11 -11 -12 -12 -12 -13 -13 -14 -14 -15 -16 -17 -17 -17 -17 -17 -17 -17 -17 -17 -16 -14 -13 -13 -13 -14 -15 -16 -17 -18 -18 -18 -17 -16 -15 -14 -10 -8 -8 -8 -8 -10 -13 -16 -19 -19 -17 -13 -9 -5 -3 -1 -1 -2 -3 -4 -6 -8 -9 -11 -12 -13 -13 -14 -16 -20 -25 -28 -28 -24 -16 -9 -4 -4 -6 -10 -12 -12 -11 -9 -8 -7 -7 -7 -7 -8 -8 -8 -8 -7 -5 -3 -1 1 3 4 5 5 4 2 2 2 5 7 7 6 4 3 2 1 1 2 1 -1 -3 -6 -8 -10 -10 -7 -3 3 10 15 20 22 22 22 21 21 21 22 23 24 25 24 22 21 21 22 23 26 29 33 37 40 42 41 42 42 43 44 45 45 43 41 39 38 39 40 43 46 47 48 49 49 48 48 46 45 43 41 39 36 34 32 30 28 26 25 24 22 21 20 18 17 16 15 14 12 11 10 8 6 5 3 2 1 0 -0 -0 -0 -0 -0 -1 -1 -1 -1 -1 -1 -2 -3 -6 -8 -11 -13 -14 -14 -14 -14 -13 -12 -11 -10 -10 -10 -10 -11 -12 -14 -16 -17 -18 -18 -19 -20 -21 -22 -23 -24 -25 -25 -26 -26 -26 -27 -27 -28 -28 -28 -27 -27 -26 -24 -24 -23 -24 -24 -25 -26 -27 -27 -28 -28 -29 -29 -30 -30 -30 -30 -29 -29 -28 -27 -25 -23 -22 -20 -19 -19 -19 -20 -21 -22 -23 -24 -25 -25 -26 -27 -28 -28 -29 -28 -28 -27 -27 -27 -26 -25 -25 -24 -23 -22 -23 -23 -24 -25 -26 -26 -26 -27 -27 -27 -27 -27 -27 -27 -27 -26 -25 -24 -22 -21 -19 -17 -16 -15 -15 -15 -16 -16 -17 -17 -18 -18 -18 -18 -18 -18 -18 -19 -19 -19 -19 -19 -18 -18 -18 -19 -19 -19 -19 -19 -18 -18 -18 -18 -18 -19 -19 -19 -19 -18 -18 -17 -16 -16 -15 -14 -13 -12 -11 -8 -6 -5 -6 -8 -10 -10 -10 -10 -10 -10 -9 -9 -9 -10 -11 -14 -16 -18 -20 -21 -21 -20 -19 -17 -16 -15 -14 -14 -14 -13 -13 -12 -11 -10 -10 -10 -10 -10 -10 -10 -10 -11 -11 -12 -12 -12 -13 -14 -15 -15 -16 -17 -17 -17 -17 -17 -17 -17 -17 -16 -14 -13 -12 -13 -14 -15 -16 -18 -19 -19 -19 -18 -17 -15 -13 -10 -8 -7 -7 -8 -10 -12 -15 -17 -19 -19 -16 -13 -9 -6 -3 -1 -1 -2 -3 -4 -5 -7 -9 -10 -12 -12 -13 -15 -18 -22 -26 -28 -25 -19 -11 -5 -3 -5 -9 -12 -12 -11 -9 -8 -8 -9 -8 -8 -8 -8 -8 -8 -8 -7 -5 -3 -2 -0 1 2 2 1 -0 -0 1 4 6 7 8 8 6 3 1 -0 -1 -1 -2 -2 -2 -3 -5 -7 -8 -8 -6 -2 4 11 16 20 21 20 19 20 23 26 27 26 25 24 24 25 27 29 32 35 37 40 41 42 44 45 45 45 45 46 46 44 43 44 44 44 43 44 46 49 51 51 51 51 50 49 47 46 43 41 39 36 34 32 31 29 28 27 26 24 23 22 21 20 19 17 16 14 12 10 8 6 4 3 2 2 2 2 1 1 1 1 1 1 2 2 2 1 0 -2 -5 -7 -9 -11 -12 -12 -11 -10 -9 -8 -7 -7 -7 -8 -9 -10 -12 -13 -13 -14 -15 -16 -17 -18 -19 -21 -22 -23 -24 -24 -25 -25 -26 -27 -27 -27 -27 -26 -25 -23 -22 -22 -21 -22 -22 -23 -23 -24 -24 -25 -26 -26 -27 -27 -28 -28 -28 -28 -27 -27 -25 -24 -23 -21 -20 -19 -19 -20 -20 -21 -22 -23 -24 -25 -26 -26 -27 -28 -28 -28 -28 -27 -26 -26 -26 -25 -24 -23 -22 -21 -21 -21 -22 -23 -23 -24 -25 -25 -26 -26 -27 -27 -27 -28 -28 -28 -27 -27 -26 -24 -22 -20 -18 -17 -16 -16 -16 -16 -17 -17 -18 -18 -18 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -20 -20 -21 -21 -21 -19 -18 -17 -16 -16 -16 -17 -17 -17 -16 -16 -15 -15 -14 -14 -14 -15 -15 -13 -11 -7 -4 -3 -5 -7 -8 -8 -8 -8 -8 -8 -8 -7 -8 -8 -10 -12 -15 -17 -19 -19 -19 -18 -16 -15 -14 -13 -13 -13 -12 -12 -12 -11 -10 -9 -9 -9 -9 -9 -9 -9 -9 -9 -10 -11 -11 -12 -12 -13 -14 -15 -16 -17 -17 -17 -17 -17 -18 -18 -17 -16 -15 -13 -13 -13 -14 -15 -17 -18 -19 -20 -19 -18 -16 -16 -13 -9 -7 -6 -7 -8 -10 -11 -13 -15 -17 -18 -17 -15 -13 -10 -7 -5 -4 -3 -3 -3 -4 -5 -7 -9 -10 -11 -12 -14 -16 -20 -25 -28 -27 -22 -14 -7 -3 -5 -9 -11 -12 -10 -9 -9 -9 -9 -9 -9 -9 -8 -8 -9 -8 -8 -7 -6 -5 -4 -2 -2 -2 -4 -5 -5 -3 1 6 9 10 9 6 3 -1 -3 -5 -5 -4 -2 -1 -0 -1 -3 -6 -8 -9 -8 -3 5 14 20 22 21 22 24 27 28 28 28 28 28 28 28 31 34 37 39 41 42 44 46 47 47 46 46 49 50 49 47 47 47 47 46 45 46 47 49 50 52 53 53 52 51 50 48 46 44 41 39 37 35 34 32 31 30 29 28 27 26 25 24 22 20 18 16 13 11 9 7 5 4 3 3 3 3 2 2 2 2 3 3 4 4 5 4 3 2 -1 -4 -6 -8 -9 -9 -9 -8 -7 -6 -5 -5 -5 -6 -7 -8 -9 -9 -10 -10 -12 -13 -14 -16 -17 -18 -20 -21 -22 -22 -23 -24 -25 -25 -26 -26 -25 -24 -23 -21 -20 -20 -20 -20 -20 -20 -21 -21 -22 -22 -23 -24 -24 -25 -25 -26 -26 -26 -25 -25 -24 -23 -21 -20 -19 -19 -19 -20 -20 -21 -22 -23 -24 -25 -26 -26 -27 -28 -28 -28 -27 -27 -26 -25 -25 -24 -23 -22 -21 -20 -20 -20 -20 -21 -21 -22 -23 -24 -25 -25 -26 -26 -27 -27 -27 -28 -28 -28 -27 -26 -24 -22 -21 -19 -17 -17 -17 -17 -17 -18 -18 -19 -19 -20 -19 -19 -19 -20 -20 -19 -19 -19 -20 -20 -20 -21 -22 -23 -23 -22 -19 -17 -16 -15 -15 -15 -15 -15 -15 -14 -14 -13 -12 -12 -13 -15 -17 -17 -14 -9 -4 -1 -2 -4 -6 -6 -7 -7 -7 -7 -6 -6 -6 -6 -7 -9 -11 -14 -16 -17 -17 -17 -16 -14 -13 -13 -12 -12 -12 -11 -11 -10 -10 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -9 -10 -11 -12 -13 -14 -15 -16 -17 -17 -17 -18 -18 -18 -18 -18 -17 -15 -14 -13 -13 -14 -16 -17 -19 -20 -20 -19 -18 -17 -17 -13 -8 -6 -5 -6 -8 -10 -12 -13 -14 -15 -16 -16 -16 -15 -13 -11 -9 -7 -6 -5 -4 -4 -5 -7 -8 -9 -10 -11 -12 -14 -18 -23 -28 -28 -25 -17 -9 -5 -6 -9 -11 -11 -10 -9 -9 -9 -9 -10 -9 -8 -8 -9 -9 -9 -8 -8 -8 -7 -6 -6 -6 -7 -9 -9 -8 -5 -1 2 5 8 8 7 3 -2 -7 -9 -10 -9 -7 -4 -0 1 1 -1 -5 -9 -10 -6 2 12 19 21 23 24 26 28 29 29 30 31 31 31 32 34 37 41 44 45 47 49 50 50 48 48 52 56 55 52 50 49 49 50 51 50 47 46 48 50 52 54 55 55 54 52 51 49 47 44 42 40 38 37 36 35 34 33 32 31 30 28 27 25 23 20 17 14 12 9 7 6 5 4 4 4 4 3 3 4 4 4 5 6 6 7 7 6 5 3 0 -3 -5 -6 -6 -6 -5 -5 -4 -4 -4 -5 -5 -5 -5 -6 -6 -7 -8 -9 -10 -12 -13 -14 -16 -17 -18 -19 -20 -20 -21 -22 -23 -23 -23 -23 -21 -20 -19 -18 -18 -18 -18 -18 -19 -19 -19 -19 -20 -20 -21 -21 -22 -22 -23 -23 -23 -23 -23 -22 -21 -20 -19 -18 -18 -18 -19 -20 -21 -22 -23 -24 -25 -25 -26 -27 -28 -28 -28 -27 -27 -26 -25 -24 -23 -22 -21 -20 -20 -19 -19 -20 -20 -20 -21 -22 -23 -24 -24 -25 -25 -26 -26 -27 -27 -28 -28 -28 -28 -26 -25 -23 -21 -19 -18 -18 -18 -18 -19 -19 -20 -20 -20 -20 -20 -20 -19 -19 -19 -19 -19 -20 -20 -21 -23 -25 -25 -24 -22 -18 -16 -15 -15 -15 -15 -14 -14 -13 -13 -12 -11 -11 -12 -14 -17 -18 -17 -12 -7 -2 -0 -2 -3 -4 -5 -5 -6 -6 -5 -5 -5 -5 -5 -6 -8 -10 -13 -15 -15 -15 -15 -14 -13 -12 -11 -11 -11 -10 -10 -10 -9 -8 -8 -7 -7 -7 -7 -7 -7 -6 -6 -6 -7 -8 -9 -10 -11 -13 -14 -15 -16 -17 -17 -18 -18 -19 -19 -19 -18 -18 -16 -15 -14 -14 -14 -16 -18 -19 -20 -20 -19 -16 -20 -17 -11 -6 -3 -3 -6 -10 -12 -13 -13 -12 -13 -14 -14 -15 -15 -14 -13 -12 -11 -9 -8 -6 -6 -6 -7 -8 -9 -9 -10 -11 -12 -16 -22 -27 -30 -28 -21 -12 -7 -6 -9 -11 -10 -9 -8 -8 -8 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -9 -8 -8 -9 -9 -9 -9 -10 -10 -10 -8 -5 -0 3 4 4 2 -0 -5 -9 -12 -13 -12 -8 -4 -1 1 -0 -5 -9 -11 -9 -3 6 13 18 21 24 27 28 29 30 32 33 35 35 36 38 41 45 49 51 53 54 53 51 52 57 61 61 58 54 51 50 51 53 54 54 53 49 45 46 53 56 58 57 56 55 54 52 50 47 45 43 41 40 39 38 37 36 35 34 33 31 29 27 24 21 18 15 13 10 9 7 6 6 5 5 5 5 5 5 5 5 6 7 7 8 9 9 8 6 3 1 -2 -3 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -4 -5 -6 -8 -9 -10 -12 -13 -14 -15 -15 -16 -17 -18 -19 -20 -20 -20 -20 -18 -17 -16 -16 -16 -16 -16 -17 -17 -17 -17 -17 -17 -17 -18 -18 -19 -19 -19 -20 -20 -20 -20 -19 -19 -18 -17 -17 -17 -17 -18 -18 -19 -20 -22 -23 -24 -25 -26 -27 -28 -28 -28 -27 -27 -26 -25 -24 -23 -22 -21 -21 -20 -20 -20 -20 -20 -20 -21 -21 -22 -23 -24 -24 -24 -24 -25 -25 -26 -28 -29 -29 -29 -28 -26 -24 -23 -21 -20 -20 -20 -20 -21 -21 -22 -22 -21 -21 -20 -19 -19 -19 -19 -19 -19 -20 -21 -23 -25 -26 -25 -23 -20 -17 -16 -15 -15 -14 -14 -13 -12 -12 -11 -10 -10 -11 -13 -16 -18 -17 -14 -9 -4 -0 -1 -2 -3 -4 -4 -4 -5 -5 -4 -4 -4 -4 -4 -5 -7 -9 -11 -13 -13 -13 -13 -12 -11 -10 -10 -10 -10 -9 -9 -8 -8 -7 -7 -6 -6 -6 -6 -5 -5 -4 -4 -4 -5 -6 -7 -9 -10 -12 -13 -15 -16 -17 -18 -18 -18 -19 -19 -19 -19 -18 -17 -16 -15 -14 -15 -17 -18 -19 -20 -19 -15 -21 -21 -16 -9 -3 -0 -3 -9 -13 -14 -13 -11 -11 -11 -12 -13 -14 -14 -15 -15 -15 -14 -12 -11 -10 -9 -8 -8 -9 -9 -9 -9 -9 -10 -14 -20 -27 -31 -31 -23 -14 -7 -5 -8 -11 -10 -9 -8 -8 -8 -8 -8 -8 -8 -8 -7 -7 -7 -7 -8 -8 -9 -10 -9 -9 -8 -9 -10 -11 -12 -12 -10 -8 -5 -2 0 2 0 -4 -9 -13 -15 -14 -12 -10 -8 -6 -5 -7 -9 -10 -8 -4 0 6 12 18 22 25 28 29 30 31 33 35 37 39 41 45 48 51 53 55 56 54 56 62 66 63 58 51 49 50 52 55 57 59 60 59 56 52 51 55 59 60 59 59 58 56 55 53 51 48 46 45 43 42 41 40 39 38 37 35 33 31 29 26 23 20 17 14 12 10 9 8 7 7 6 6 6 6 6 6 7 7 8 9 10 11 11 11 9 7 4 2 0 -1 -2 -3 -3 -4 -4 -3 -3 -2 -1 -1 -1 -2 -2 -3 -4 -5 -6 -7 -9 -9 -10 -11 -11 -12 -13 -15 -16 -17 -17 -17 -16 -14 -13 -13 -12 -13 -13 -14 -14 -14 -15 -15 -15 -14 -15 -15 -15 -15 -16 -16 -16 -17 -17 -17 -17 -17 -16 -16 -16 -15 -16 -16 -17 -18 -19 -20 -21 -22 -23 -25 -26 -27 -28 -27 -27 -27 -26 -25 -25 -24 -23 -22 -22 -22 -21 -21 -21 -21 -21 -21 -22 -23 -23 -23 -23 -23 -23 -23 -24 -26 -27 -29 -29 -29 -29 -27 -26 -24 -23 -22 -22 -22 -22 -23 -23 -22 -22 -21 -20 -19 -18 -18 -18 -19 -19 -19 -20 -21 -23 -25 -25 -24 -20 -17 -15 -14 -14 -14 -13 -13 -12 -11 -10 -10 -10 -10 -11 -14 -17 -17 -15 -11 -6 -2 -0 -1 -2 -3 -3 -4 -4 -4 -3 -3 -3 -3 -3 -3 -4 -6 -8 -9 -11 -11 -11 -10 -10 -9 -9 -9 -8 -8 -8 -7 -7 -7 -6 -6 -5 -5 -4 -4 -3 -3 -2 -2 -2 -3 -4 -5 -7 -8 -10 -12 -14 -15 -16 -17 -18 -18 -19 -20 -20 -20 -19 -18 -16 -15 -15 -16 -17 -18 -19 -19 -14 -21 -23 -20 -13 -5 0 -1 -7 -11 -13 -13 -11 -11 -10 -10 -10 -11 -12 -13 -14 -15 -15 -15 -15 -14 -13 -12 -12 -11 -11 -11 -10 -9 -8 -8 -11 -16 -24 -30 -30 -24 -14 -7 -5 -8 -10 -10 -9 -8 -7 -7 -7 -7 -8 -8 -8 -7 -6 -6 -6 -7 -8 -9 -9 -9 -8 -8 -9 -10 -12 -13 -14 -14 -13 -11 -9 -5 -3 -2 -4 -7 -10 -13 -15 -15 -15 -13 -11 -10 -9 -9 -7 -5 -4 -1 3 7 13 19 25 28 30 31 32 34 37 39 41 44 46 49 51 54 57 60 67 71 70 64 58 53 53 53 53 51 53 59 63 64 62 56 54 58 62 62 61 61 61 60 59 58 56 54 52 50 48 46 45 44 43 41 40 38 37 35 33 30 27 24 21 18 15 13 12 11 10 9 9 8 8 7 7 7 7 8 8 9 10 12 13 14 13 12 10 7 5 3 1 -1 -2 -2 -3 -2 -2 -1 -0 0 0 0 0 0 -0 -1 -2 -3 -4 -5 -6 -6 -7 -8 -9 -10 -12 -13 -14 -14 -14 -12 -11 -10 -9 -9 -10 -10 -11 -11 -11 -11 -11 -12 -12 -12 -12 -12 -12 -12 -12 -13 -14 -14 -15 -15 -15 -15 -14 -14 -14 -14 -15 -15 -16 -17 -18 -19 -20 -21 -23 -24 -25 -26 -26 -27 -26 -26 -26 -25 -24 -24 -23 -23 -23 -23 -23 -22 -22 -22 -22 -23 -23 -24 -23 -22 -22 -22 -22 -24 -25 -27 -28 -29 -29 -29 -27 -26 -25 -25 -25 -25 -24 -24 -23 -23 -22 -20 -19 -18 -18 -18 -18 -18 -18 -17 -18 -19 -21 -23 -24 -23 -20 -17 -15 -13 -13 -13 -13 -12 -11 -10 -10 -9 -9 -9 -10 -12 -15 -16 -15 -12 -9 -5 -2 -0 -1 -2 -3 -3 -3 -3 -3 -2 -1 -1 -1 -2 -2 -3 -4 -6 -7 -8 -9 -9 -8 -8 -8 -7 -7 -7 -7 -6 -6 -6 -6 -5 -5 -4 -4 -3 -2 -2 -1 -1 -0 0 -0 -1 -2 -4 -6 -8 -10 -12 -14 -15 -16 -17 -18 -19 -19 -20 -20 -19 -18 -16 -15 -15 -16 -17 -18 -19 -13 -19 -23 -22 -17 -10 -3 -1 -4 -9 -11 -11 -10 -10 -10 -9 -9 -9 -9 -10 -11 -12 -13 -14 -15 -16 -15 -15 -14 -14 -14 -14 -14 -13 -12 -10 -8 -9 -13 -19 -25 -26 -21 -14 -6 -4 -6 -8 -8 -8 -7 -7 -7 -6 -7 -7 -8 -8 -7 -7 -6 -6 -7 -8 -9 -9 -9 -9 -9 -9 -11 -12 -13 -14 -15 -15 -15 -14 -11 -9 -7 -5 -6 -8 -10 -12 -14 -15 -14 -13 -12 -11 -9 -6 -4 -2 -1 1 5 10 16 22 27 30 33 35 38 40 42 45 47 48 50 53 58 67 73 72 67 60 54 52 53 54 53 53 53 56 59 62 65 60 58 60 64 65 65 64 64 63 62 61 60 58 56 54 52 51 49 48 46 45 43 41 39 38 36 35 32 29 26 22 20 17 16 15 14 13 12 11 10 9 9 9 9 8 8 9 10 12 13 15 16 16 15 13 10 7 4 2 1 -0 -1 -1 -0 1 1 1 2 2 2 3 3 3 2 1 0 -1 -2 -2 -3 -4 -5 -6 -8 -9 -10 -11 -11 -10 -9 -7 -6 -6 -6 -6 -7 -7 -7 -7 -8 -8 -8 -9 -9 -9 -9 -9 -9 -9 -10 -11 -12 -13 -13 -13 -13 -13 -12 -12 -13 -13 -14 -14 -15 -15 -16 -17 -19 -20 -22 -23 -24 -25 -26 -26 -26 -26 -25 -25 -25 -24 -24 -24 -24 -23 -23 -23 -23 -23 -24 -24 -24 -23 -22 -21 -21 -22 -24 -25 -27 -28 -29 -29 -28 -27 -26 -26 -27 -27 -26 -25 -24 -22 -21 -19 -18 -18 -18 -17 -17 -17 -16 -15 -15 -16 -17 -19 -21 -21 -19 -16 -14 -13 -13 -13 -12 -12 -11 -10 -9 -9 -8 -8 -8 -10 -13 -15 -15 -14 -11 -8 -4 -1 -0 -1 -3 -4 -4 -3 -2 -1 -0 0 0 -0 -0 -1 -1 -2 -3 -4 -5 -6 -6 -6 -6 -6 -6 -5 -5 -6 -6 -6 -5 -5 -5 -4 -4 -3 -2 -2 -1 -1 0 2 2 3 2 1 -1 -3 -5 -7 -9 -11 -13 -14 -16 -17 -18 -19 -19 -19 -18 -17 -16 -15 -15 -16 -17 -18 -11 -15 -19 -20 -19 -15 -10 -5 -5 -7 -9 -10 -9 -9 -9 -9 -9 -9 -8 -8 -9 -9 -10 -11 -12 -13 -14 -14 -14 -14 -15 -15 -16 -16 -16 -15 -12 -11 -10 -11 -16 -21 -22 -19 -12 -5 -2 -3 -4 -5 -5 -5 -5 -5 -5 -6 -7 -8 -9 -8 -8 -7 -7 -8 -8 -8 -8 -9 -10 -10 -10 -11 -12 -13 -14 -15 -16 -17 -18 -17 -14 -11 -8 -7 -6 -6 -8 -9 -10 -12 -13 -14 -14 -11 -7 -3 -1 1 2 4 7 12 18 24 28 32 35 38 41 45 48 49 49 50 54 60 61 59 56 53 49 50 51 52 53 53 55 56 58 61 64 63 64 65 67 67 67 67 66 66 65 64 64 62 61 59 57 55 53 52 50 48 46 44 42 41 39 38 36 33 30 27 24 21 20 19 18 16 15 14 13 12 11 10 10 9 9 9 10 11 13 15 17 18 19 17 15 12 9 6 4 3 2 2 2 3 3 3 3 3 4 4 5 6 5 5 4 4 2 1 0 -1 -2 -3 -4 -5 -7 -8 -8 -8 -7 -6 -4 -4 -4 -4 -4 -4 -3 -3 -3 -4 -4 -5 -6 -6 -6 -6 -5 -5 -5 -7 -8 -10 -11 -12 -12 -12 -12 -11 -12 -12 -12 -12 -13 -13 -13 -14 -15 -16 -18 -20 -21 -23 -24 -25 -26 -26 -26 -25 -25 -25 -24 -24 -24 -23 -23 -22 -22 -23 -23 -24 -24 -23 -22 -21 -21 -21 -22 -24 -25 -27 -28 -28 -27 -27 -26 -27 -28 -28 -27 -26 -24 -22 -20 -19 -18 -18 -17 -17 -16 -15 -14 -13 -13 -13 -14 -16 -17 -17 -17 -16 -14 -13 -12 -12 -11 -11 -10 -9 -9 -9 -8 -8 -8 -9 -10 -13 -15 -15 -13 -10 -7 -3 -0 -0 -2 -4 -4 -3 -2 -1 0 1 2 2 1 1 1 1 0 -1 -2 -3 -4 -4 -4 -4 -4 -4 -4 -5 -5 -6 -5 -5 -5 -4 -4 -3 -2 -2 -2 -2 -0 1 3 4 5 4 3 2 -0 -2 -4 -6 -8 -10 -12 -13 -15 -16 -18 -18 -18 -18 -17 -15 -14 -14 -15 -17 -8 -9 -13 -15 -17 -17 -15 -12 -10 -9 -10 -10 -10 -10 -9 -10 -10 -10 -10 -8 -8 -8 -8 -8 -9 -10 -11 -12 -12 -13 -13 -14 -15 -16 -17 -17 -16 -15 -13 -12 -12 -15 -18 -19 -17 -10 -3 0 2 1 1 -0 -1 -2 -2 -3 -5 -6 -8 -9 -9 -9 -8 -8 -7 -7 -7 -8 -9 -10 -11 -12 -12 -12 -12 -13 -14 -16 -18 -20 -21 -20 -17 -13 -9 -5 -3 -3 -3 -4 -8 -13 -16 -16 -13 -8 -3 1 3 2 1 3 6 12 17 22 26 29 32 36 41 42 42 41 41 41 40 40 42 44 45 47 48 49 50 52 54 56 58 61 63 64 65 66 66 64 62 63 66 68 68 67 66 66 64 63 61 59 57 56 54 52 50 48 45 44 42 41 40 38 35 32 28 26 24 23 22 20 19 18 16 15 13 12 11 10 10 10 10 11 13 15 17 19 20 20 19 16 13 10 8 6 5 5 5 5 6 5 5 5 6 6 7 8 8 8 8 7 6 5 3 2 0 -1 -1 -2 -3 -4 -5 -5 -5 -4 -3 -2 -2 -2 -1 -1 0 1 1 0 -0 -1 -2 -3 -3 -3 -2 -2 -1 -2 -4 -6 -8 -9 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -12 -13 -14 -16 -18 -20 -22 -23 -25 -25 -26 -25 -25 -25 -24 -24 -24 -23 -23 -22 -22 -22 -22 -23 -24 -24 -23 -22 -21 -21 -21 -22 -24 -25 -26 -27 -26 -26 -26 -27 -27 -28 -27 -26 -24 -22 -20 -19 -18 -17 -16 -16 -15 -14 -13 -12 -11 -11 -12 -13 -14 -14 -15 -15 -14 -13 -12 -11 -10 -10 -9 -9 -8 -8 -8 -8 -8 -8 -9 -11 -13 -15 -14 -12 -9 -6 -2 -0 -1 -3 -4 -4 -3 -1 0 2 3 3 3 3 3 3 3 2 2 0 -1 -2 -2 -2 -2 -2 -3 -3 -4 -5 -6 -6 -5 -5 -4 -3 -3 -2 -2 -2 -2 -0 2 4 5 6 6 5 4 3 1 -1 -3 -5 -7 -9 -11 -12 -14 -16 -17 -17 -17 -16 -14 -14 -14 -15 -7 -4 -5 -8 -12 -14 -16 -15 -14 -13 -12 -12 -12 -12 -11 -12 -12 -12 -11 -10 -9 -9 -8 -8 -8 -8 -8 -9 -10 -13 -13 -12 -13 -14 -17 -17 -18 -18 -17 -15 -13 -13 -14 -17 -18 -15 -9 -2 4 7 8 6 5 4 3 1 -1 -2 -4 -7 -9 -9 -8 -7 -7 -6 -6 -7 -8 -9 -11 -12 -12 -12 -12 -13 -13 -13 -15 -18 -21 -23 -23 -21 -18 -13 -9 -4 -0 1 -1 -6 -11 -15 -15 -13 -10 -5 -1 -0 -1 -1 -1 2 5 9 12 14 15 17 21 25 27 26 25 23 23 27 32 37 40 43 45 47 48 50 52 55 58 62 65 66 66 66 65 62 60 63 68 71 70 69 69 68 67 66 65 63 61 60 58 56 54 52 49 47 45 44 43 41 39 36 33 30 28 26 25 24 22 21 19 17 16 14 13 11 11 10 10 11 12 14 16 18 20 21 21 19 17 14 12 10 9 9 9 9 9 9 8 8 8 8 9 9 10 10 10 10 9 8 6 5 3 2 1 1 0 -0 -1 -1 -2 -1 -0 0 0 1 1 2 3 4 5 5 4 3 2 2 1 1 1 2 2 2 1 -1 -3 -6 -8 -10 -11 -11 -11 -10 -10 -10 -10 -10 -9 -9 -9 -10 -11 -13 -15 -17 -19 -22 -23 -25 -25 -25 -25 -25 -24 -24 -23 -23 -22 -21 -21 -20 -21 -22 -23 -23 -23 -23 -21 -21 -20 -21 -22 -24 -25 -26 -26 -26 -26 -26 -26 -26 -26 -25 -24 -22 -20 -19 -17 -16 -15 -15 -14 -13 -13 -12 -11 -11 -11 -12 -12 -13 -13 -14 -14 -13 -12 -10 -9 -8 -8 -8 -8 -8 -8 -9 -9 -8 -9 -9 -11 -14 -14 -13 -11 -9 -6 -2 -1 -2 -3 -4 -4 -2 -0 1 3 4 4 4 4 5 5 5 4 3 2 1 0 0 0 -0 -1 -2 -3 -5 -6 -6 -6 -5 -4 -4 -3 -3 -3 -3 -2 -1 0 2 4 6 7 7 7 6 5 4 3 1 -1 -3 -5 -8 -10 -12 -14 -16 -17 -16 -15 -14 -13 -14 -14 -9 -4 -4 -7 -10 -13 -15 -15 -14 -13 -13 -14 -14 -13 -13 -13 -13 -13 -12 -11 -10 -10 -9 -8 -8 -8 -8 -10 -13 -15 -14 -12 -12 -14 -15 -16 -17 -18 -17 -16 -15 -14 -15 -17 -18 -15 -9 -1 6 11 10 9 9 9 7 5 3 0 -3 -5 -6 -7 -7 -6 -6 -6 -6 -7 -8 -10 -12 -12 -12 -12 -13 -13 -13 -13 -15 -17 -20 -21 -22 -23 -22 -20 -15 -8 -3 0 1 -2 -5 -8 -10 -11 -11 -9 -6 -4 -3 -2 -2 -1 2 5 6 5 3 3 6 10 13 15 15 18 22 26 32 36 40 43 46 48 49 51 54 59 65 70 71 71 70 68 66 67 69 71 71 69 69 70 71 70 69 68 66 65 63 62 60 58 56 53 51 49 47 46 44 42 40 37 34 32 30 28 27 25 24 22 20 18 16 14 13 12 11 11 11 12 13 15 17 19 21 22 21 20 18 16 14 13 12 12 13 13 13 12 12 11 11 11 11 12 12 13 12 12 11 9 7 6 5 4 3 3 2 2 2 2 2 3 3 3 3 3 4 6 8 9 9 8 7 7 6 5 5 5 5 5 5 5 4 1 -1 -4 -7 -9 -10 -10 -10 -10 -10 -10 -10 -9 -9 -8 -8 -9 -11 -12 -15 -17 -20 -22 -23 -24 -24 -24 -24 -24 -23 -23 -22 -21 -21 -20 -19 -19 -20 -21 -22 -23 -23 -22 -21 -20 -20 -21 -22 -24 -25 -26 -26 -26 -26 -25 -25 -25 -24 -24 -23 -21 -19 -17 -16 -14 -13 -13 -12 -12 -12 -12 -12 -11 -11 -12 -12 -13 -13 -14 -14 -12 -11 -9 -8 -7 -7 -8 -8 -8 -9 -9 -9 -8 -8 -9 -11 -14 -14 -12 -10 -9 -6 -3 -2 -2 -3 -4 -3 -2 0 2 4 5 5 6 6 6 7 6 6 5 3 3 2 2 2 1 -0 -2 -4 -5 -6 -6 -6 -5 -4 -3 -3 -3 -3 -2 -2 -1 0 2 4 6 8 8 8 8 7 7 6 4 2 0 -2 -4 -6 -9 -12 -15 -16 -15 -14 -13 -13 -19 -16 -10 -6 -5 -6 -9 -12 -13 -13 -13 -13 -14 -15 -15 -14 -15 -15 -15 -14 -13 -12 -11 -11 -10 -10 -10 -10 -10 -13 -16 -16 -13 -11 -11 -13 -13 -14 -16 -17 -17 -17 -16 -16 -17 -19 -19 -17 -12 -5 2 7 10 10 10 8 6 7 6 3 -0 -2 -4 -5 -5 -5 -5 -6 -7 -9 -11 -12 -13 -14 -15 -14 -14 -14 -15 -16 -17 -17 -16 -17 -19 -21 -23 -22 -20 -15 -10 -5 -1 2 3 2 -1 -4 -7 -7 -7 -6 -5 -5 -5 -4 -1 2 5 6 6 7 8 11 15 18 20 24 27 32 36 41 45 47 49 50 52 56 64 74 82 82 78 74 71 71 72 71 68 66 64 65 69 70 71 71 70 69 67 66 65 63 62 60 58 55 53 50 48 47 45 43 41 38 36 34 31 30 28 26 24 22 20 18 16 15 13 12 12 12 12 13 14 16 18 20 21 22 22 21 19 17 16 16 16 16 17 17 16 16 15 14 14 14 14 15 15 15 14 13 11 10 8 7 6 5 4 4 4 4 4 5 5 6 6 6 6 7 9 11 13 14 13 12 11 10 10 9 9 9 9 9 9 8 6 3 0 -3 -6 -8 -9 -9 -9 -9 -9 -9 -9 -8 -8 -7 -8 -9 -10 -13 -15 -18 -20 -22 -22 -23 -23 -23 -23 -23 -23 -22 -21 -21 -20 -19 -18 -18 -19 -20 -21 -22 -21 -21 -20 -19 -20 -21 -22 -24 -25 -26 -26 -25 -24 -23 -23 -23 -23 -23 -22 -20 -18 -16 -14 -13 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -13 -13 -13 -13 -13 -11 -10 -8 -7 -7 -8 -8 -8 -9 -9 -9 -9 -8 -8 -10 -13 -14 -13 -11 -10 -9 -7 -4 -2 -2 -3 -3 -3 -1 1 3 5 6 6 7 8 8 8 7 6 6 5 4 4 3 3 1 -1 -3 -5 -6 -6 -6 -5 -4 -3 -3 -3 -3 -3 -2 -2 -1 0 2 4 6 8 9 9 9 9 9 8 7 5 3 1 -0 -3 -6 -9 -13 -15 -15 -13 -12 -19 -18 -15 -11 -8 -7 -7 -9 -10 -10 -11 -12 -14 -15 -15 -15 -16 -16 -16 -15 -14 -13 -13 -12 -12 -12 -12 -12 -13 -15 -15 -15 -13 -12 -12 -13 -14 -14 -15 -16 -16 -17 -18 -18 -19 -20 -20 -21 -20 -17 -11 -3 2 5 6 6 9 11 10 8 5 2 0 -1 -1 -1 -2 -3 -5 -7 -10 -12 -15 -17 -17 -16 -14 -12 -13 -14 -15 -15 -14 -14 -15 -17 -19 -21 -22 -22 -20 -17 -11 -5 0 4 6 6 4 1 -1 -3 -4 -6 -7 -7 -6 -3 -1 3 5 7 10 13 17 20 23 27 31 35 39 43 47 51 53 54 56 63 74 85 89 85 80 76 73 72 69 67 66 67 68 68 63 63 67 72 73 71 70 68 67 66 65 64 62 60 57 54 51 49 48 46 44 42 39 37 34 32 30 28 27 25 22 20 18 16 15 13 13 12 13 14 15 16 18 19 21 22 22 22 21 20 19 18 18 19 19 20 20 19 18 17 17 16 17 17 17 17 16 15 14 12 10 9 8 7 6 5 5 4 5 5 7 8 8 9 9 9 11 14 17 20 20 18 16 15 14 13 13 12 12 12 12 11 10 8 5 2 -2 -5 -7 -8 -8 -8 -8 -8 -8 -8 -7 -6 -6 -7 -8 -11 -14 -16 -18 -19 -20 -21 -21 -22 -22 -23 -23 -22 -22 -21 -20 -19 -18 -17 -17 -18 -19 -20 -20 -20 -19 -19 -19 -19 -21 -23 -24 -26 -26 -25 -24 -22 -22 -21 -22 -22 -22 -21 -19 -17 -15 -13 -12 -11 -12 -12 -13 -13 -13 -12 -12 -12 -13 -13 -14 -13 -13 -12 -11 -10 -8 -8 -8 -9 -9 -9 -9 -9 -9 -8 -8 -9 -12 -14 -15 -12 -10 -10 -10 -8 -4 -1 -1 -3 -3 -3 -1 1 3 5 7 8 8 9 9 9 8 7 7 6 6 5 4 2 -0 -2 -4 -5 -6 -5 -5 -4 -3 -3 -3 -3 -3 -3 -2 -2 -1 -0 1 3 5 7 9 10 10 10 10 9 9 8 6 5 3 1 -2 -7 -12 -15 -15 -13 -15 -16 -16 -14 -12 -10 -9 -7 -6 -7 -8 -9 -12 -14 -15 -15 -16 -16 -17 -16 -15 -14 -14 -13 -13 -13 -13 -13 -14 -16 -15 -12 -11 -11 -13 -13 -14 -14 -15 -15 -16 -16 -17 -18 -19 -19 -19 -19 -20 -20 -19 -13 -7 -2 1 2 5 7 8 7 6 5 3 3 3 3 2 1 -1 -3 -6 -10 -13 -16 -16 -15 -13 -11 -12 -13 -13 -13 -13 -12 -12 -13 -14 -16 -18 -20 -21 -22 -20 -16 -10 -4 2 7 10 11 9 7 4 1 -2 -4 -5 -5 -4 -2 1 4 8 12 16 20 23 27 32 36 40 44 49 53 57 60 65 74 83 87 86 83 79 75 72 70 68 68 70 72 74 75 72 69 67 69 74 73 72 71 70 69 68 67 66 64 61 58 55 52 50 48 47 45 43 40 38 35 33 30 29 27 24 22 20 18 16 15 14 14 14 15 16 17 18 19 20 21 22 23 22 22 21 20 20 20 21 21 22 21 21 20 19 19 19 20 20 20 19 18 16 14 12 11 10 9 8 6 5 5 4 5 6 7 8 9 9 9 11 14 19 24 26 24 21 19 17 17 16 16 15 15 15 15 14 13 10 7 3 -0 -3 -5 -6 -7 -7 -7 -7 -6 -5 -4 -4 -4 -6 -9 -12 -14 -15 -16 -17 -18 -19 -20 -21 -22 -22 -22 -21 -21 -20 -19 -18 -17 -16 -16 -17 -17 -18 -18 -19 -18 -18 -18 -19 -21 -23 -25 -25 -24 -23 -21 -20 -20 -20 -21 -21 -21 -21 -19 -17 -15 -13 -12 -12 -12 -13 -13 -13 -13 -12 -12 -12 -13 -14 -14 -13 -13 -12 -12 -11 -10 -9 -9 -10 -10 -10 -10 -9 -9 -8 -9 -12 -15 -16 -13 -10 -10 -10 -10 -9 -4 -2 -2 -3 -4 -3 -1 2 4 6 8 9 9 10 10 9 9 8 8 8 7 5 3 1 -1 -3 -4 -5 -5 -4 -3 -2 -2 -2 -3 -3 -3 -3 -3 -3 -2 -1 0 2 5 7 9 10 11 11 11 10 10 9 8 8 7 4 0 -6 -11 -15 -15 -10 -12 -13 -14 -15 -14 -12 -10 -7 -5 -4 -6 -8 -10 -12 -13 -14 -15 -16 -16 -16 -16 -16 -15 -14 -14 -14 -14 -15 -17 -16 -13 -11 -11 -12 -12 -13 -14 -15 -15 -16 -16 -17 -17 -17 -16 -15 -15 -16 -17 -19 -18 -13 -8 -4 -3 -3 -2 -0 1 2 2 1 2 3 4 4 3 3 2 0 -3 -7 -10 -11 -11 -10 -9 -10 -10 -11 -11 -11 -11 -11 -12 -12 -12 -13 -15 -17 -20 -21 -22 -20 -16 -10 -3 5 11 14 14 13 10 7 4 1 -1 -2 -1 1 3 6 10 14 19 23 27 32 36 40 44 49 56 64 73 78 82 85 85 84 81 78 76 76 75 75 76 78 80 80 80 79 77 74 71 69 70 73 74 73 72 71 70 69 68 66 63 59 55 53 51 49 48 46 44 41 38 35 32 30 28 26 24 22 19 17 16 15 15 16 17 17 17 18 19 20 21 22 23 23 23 22 22 21 21 22 22 22 22 21 21 20 20 21 22 23 23 22 21 19 17 15 13 12 11 10 8 7 5 5 4 5 6 6 6 6 6 7 11 16 23 28 29 27 24 21 20 19 18 18 18 18 18 18 17 15 13 9 5 1 -1 -3 -4 -5 -5 -5 -5 -4 -2 -2 -2 -4 -6 -9 -11 -12 -13 -14 -15 -17 -18 -19 -20 -21 -21 -21 -20 -19 -19 -18 -17 -16 -15 -15 -15 -16 -16 -17 -17 -17 -17 -18 -19 -21 -23 -24 -23 -22 -20 -19 -19 -19 -19 -20 -21 -21 -21 -20 -18 -16 -14 -13 -12 -12 -13 -14 -13 -13 -12 -12 -13 -13 -14 -13 -12 -12 -13 -12 -12 -11 -10 -10 -10 -10 -10 -10 -9 -9 -9 -12 -15 -16 -13 -11 -9 -9 -10 -11 -9 -5 -2 -2 -4 -4 -2 0 3 6 8 9 10 11 11 10 10 10 10 9 8 6 4 2 -0 -2 -4 -4 -4 -3 -2 -1 -1 -2 -3 -3 -3 -3 -3 -4 -4 -3 -3 -1 2 4 7 9 11 11 11 11 10 10 10 10 10 9 6 2 -4 -10 -15 -7 -8 -10 -12 -15 -17 -17 -15 -12 -8 -5 -4 -4 -5 -7 -8 -9 -11 -13 -14 -15 -15 -15 -16 -16 -15 -15 -16 -18 -20 -17 -14 -12 -11 -12 -13 -13 -13 -14 -15 -16 -17 -18 -17 -17 -16 -14 -13 -13 -13 -15 -17 -15 -12 -8 -6 -7 -8 -8 -7 -6 -6 -5 -4 -3 -1 1 1 2 3 4 2 0 -2 -3 -4 -5 -6 -7 -7 -7 -7 -7 -8 -9 -10 -11 -11 -11 -12 -13 -15 -18 -21 -22 -22 -20 -16 -8 -1 6 12 16 18 16 13 10 6 4 4 5 6 8 10 14 19 23 28 32 36 40 45 50 56 67 81 84 83 82 80 79 77 78 80 83 84 85 86 86 84 80 75 76 79 80 78 77 76 74 69 66 68 73 73 72 71 69 67 63 60 56 54 52 51 49 47 44 41 38 35 32 30 28 26 24 21 19 17 17 17 18 18 19 19 19 19 19 20 22 23 23 24 24 23 22 22 22 22 22 22 21 21 20 20 21 23 24 25 25 24 22 19 17 15 14 13 12 11 9 8 6 5 5 4 4 3 2 2 2 5 9 17 24 28 30 28 26 23 21 21 20 20 21 21 22 21 20 18 15 11 7 3 0 -1 -2 -3 -3 -2 -1 -0 0 0 -1 -3 -6 -7 -8 -9 -11 -12 -14 -16 -17 -19 -19 -20 -19 -19 -19 -18 -18 -17 -16 -15 -14 -14 -14 -14 -14 -15 -15 -15 -16 -17 -18 -20 -22 -22 -20 -19 -18 -17 -17 -18 -18 -20 -21 -21 -21 -20 -19 -16 -14 -13 -12 -12 -13 -13 -13 -12 -12 -12 -13 -13 -13 -12 -12 -12 -13 -13 -12 -11 -11 -10 -10 -10 -10 -9 -9 -9 -12 -15 -17 -14 -11 -8 -8 -8 -10 -11 -9 -6 -3 -3 -4 -3 -1 2 5 7 9 10 11 12 12 11 11 11 10 8 6 4 2 1 -1 -3 -4 -3 -3 -1 -0 -1 -1 -2 -3 -4 -4 -4 -5 -5 -5 -5 -4 -2 1 4 7 9 11 11 11 10 9 9 9 10 10 9 7 3 -3 -10 -9 -8 -8 -11 -13 -16 -18 -18 -17 -15 -12 -8 -5 -4 -4 -4 -4 -5 -7 -9 -10 -11 -12 -14 -14 -14 -15 -16 -18 -19 -17 -14 -13 -13 -13 -14 -14 -14 -14 -15 -16 -18 -19 -19 -18 -17 -16 -15 -13 -12 -13 -14 -15 -14 -12 -9 -8 -10 -11 -11 -12 -11 -11 -11 -10 -9 -7 -5 -3 -1 0 2 1 2 2 1 -1 -3 -4 -4 -3 -2 -2 -2 -4 -7 -10 -12 -12 -12 -13 -14 -15 -17 -19 -22 -23 -23 -20 -15 -8 0 9 17 20 20 18 15 12 11 11 12 13 14 16 20 24 29 33 37 42 47 51 56 66 80 77 75 73 71 72 75 81 86 88 88 92 92 89 83 76 71 72 74 76 78 81 79 74 68 64 67 71 71 72 73 72 70 67 64 60 58 55 54 53 51 48 45 41 38 34 32 30 28 26 24 21 19 18 18 19 19 20 20 19 19 20 20 21 23 24 24 24 24 24 23 23 23 22 22 21 20 19 19 20 22 24 25 26 25 24 21 19 17 16 16 15 14 13 11 10 8 6 5 3 1 -0 -1 -2 -1 3 8 16 23 27 30 29 27 24 23 22 22 22 23 24 25 25 23 20 17 13 8 5 2 1 -0 -0 0 1 2 2 2 1 -0 -2 -3 -4 -5 -6 -8 -10 -12 -15 -17 -18 -18 -18 -18 -17 -17 -16 -16 -15 -15 -14 -13 -13 -12 -12 -12 -13 -13 -14 -14 -16 -18 -19 -20 -19 -17 -16 -15 -15 -16 -17 -18 -19 -20 -21 -21 -20 -18 -16 -13 -12 -11 -12 -12 -12 -12 -11 -11 -11 -12 -13 -12 -11 -11 -12 -13 -12 -12 -11 -10 -10 -10 -10 -9 -9 -9 -11 -14 -17 -14 -11 -8 -7 -7 -8 -10 -11 -9 -6 -4 -4 -2 -1 2 4 7 9 11 12 13 13 13 13 12 11 9 7 5 3 1 -1 -2 -3 -3 -1 -0 1 0 -0 -2 -3 -4 -4 -5 -6 -6 -7 -7 -7 -5 -3 1 4 7 9 10 10 9 8 7 7 8 9 10 9 7 4 -3 -12 -10 -10 -11 -12 -13 -15 -16 -17 -18 -17 -15 -12 -9 -6 -5 -4 -4 -4 -5 -5 -5 -6 -7 -8 -9 -11 -14 -17 -16 -14 -13 -13 -13 -14 -15 -15 -15 -15 -16 -17 -18 -20 -21 -21 -20 -19 -18 -17 -15 -14 -14 -16 -16 -16 -14 -11 -10 -10 -10 -11 -11 -12 -12 -13 -13 -12 -11 -10 -9 -7 -5 -4 -2 -1 -1 -1 -2 -3 -3 -2 -1 -1 1 1 -3 -8 -13 -14 -14 -14 -14 -15 -15 -16 -18 -20 -22 -23 -22 -19 -13 -5 4 13 19 23 23 21 19 18 18 19 19 20 23 26 31 35 40 45 49 54 59 67 72 63 61 61 61 67 75 84 88 86 85 90 91 88 82 75 70 69 68 68 70 74 73 70 66 65 68 73 74 72 71 69 71 71 68 65 62 59 58 56 55 52 49 45 41 38 35 32 31 29 26 24 21 20 19 19 20 20 20 20 20 20 20 21 22 24 25 25 25 25 25 24 24 23 22 21 20 19 18 19 20 22 24 26 26 24 22 20 18 18 17 17 17 17 16 14 12 10 8 6 3 1 -0 -1 -2 -1 2 7 14 21 26 29 29 27 26 24 23 23 24 26 28 29 28 26 23 19 14 10 7 4 3 2 3 3 4 4 4 3 2 1 1 -0 -1 -2 -3 -5 -8 -11 -13 -15 -17 -17 -16 -16 -15 -14 -14 -14 -14 -13 -12 -11 -11 -10 -10 -10 -11 -11 -12 -13 -15 -17 -17 -17 -16 -14 -13 -13 -14 -15 -16 -18 -19 -20 -21 -21 -19 -17 -15 -12 -10 -10 -11 -11 -11 -11 -10 -11 -12 -12 -12 -10 -10 -11 -12 -12 -12 -11 -10 -10 -10 -10 -9 -8 -9 -10 -13 -16 -14 -11 -8 -6 -5 -6 -8 -10 -11 -9 -7 -5 -3 -0 2 5 7 9 11 12 14 15 15 14 13 12 10 8 6 4 2 -0 -2 -2 -2 -0 1 2 2 0 -1 -3 -4 -5 -6 -6 -7 -8 -9 -9 -9 -7 -3 0 4 7 9 9 8 7 6 5 6 7 8 9 9 7 3 -12 -11 -12 -12 -12 -12 -12 -13 -14 -16 -17 -18 -17 -15 -12 -10 -8 -7 -6 -6 -5 -3 -2 -2 -2 -3 -6 -9 -12 -12 -11 -10 -10 -11 -12 -14 -15 -15 -16 -16 -17 -18 -20 -22 -23 -23 -23 -22 -21 -19 -18 -17 -17 -19 -20 -20 -19 -16 -13 -10 -8 -6 -7 -8 -9 -10 -11 -11 -11 -12 -11 -9 -8 -7 -7 -7 -7 -7 -7 -7 -7 -6 -5 -4 -5 -7 -9 -11 -8 -5 -5 -7 -9 -10 -11 -13 -14 -16 -19 -22 -24 -23 -20 -14 -4 7 18 25 27 25 23 23 23 24 25 27 30 33 37 42 48 52 59 67 72 66 51 49 52 57 66 75 82 84 80 79 80 83 82 80 76 69 68 66 64 63 64 65 64 64 66 70 77 78 75 71 68 70 72 71 68 65 63 62 60 59 57 54 50 46 42 38 35 33 31 29 27 25 22 20 19 19 19 19 20 20 20 20 21 22 23 24 26 26 27 26 26 25 24 23 22 21 19 18 18 19 20 23 24 25 24 22 20 19 18 18 18 19 19 19 18 17 15 13 11 9 8 6 4 3 1 1 3 7 12 19 25 28 29 28 27 25 24 25 27 29 31 32 31 29 25 21 16 12 9 7 6 5 6 6 6 6 5 4 3 3 3 2 2 1 -0 -3 -5 -9 -12 -14 -14 -14 -14 -13 -12 -12 -12 -12 -12 -11 -10 -9 -8 -7 -7 -8 -8 -9 -10 -12 -14 -15 -15 -13 -11 -10 -10 -11 -12 -14 -15 -17 -19 -20 -20 -19 -18 -16 -13 -10 -9 -9 -10 -11 -11 -11 -11 -11 -12 -12 -10 -9 -9 -10 -11 -12 -11 -10 -10 -9 -9 -9 -8 -8 -9 -11 -15 -15 -12 -9 -6 -4 -4 -5 -7 -9 -11 -9 -7 -4 -2 2 5 7 9 10 13 14 16 16 16 15 13 11 9 7 5 2 0 -1 -1 -0 2 3 4 3 1 -1 -2 -4 -5 -6 -6 -7 -8 -10 -11 -11 -10 -7 -3 0 4 6 7 7 6 4 3 3 4 6 7 9 8 6 -12 -13 -14 -14 -14 -13 -12 -12 -12 -13 -15 -16 -17 -18 -17 -15 -13 -12 -11 -10 -9 -8 -6 -4 -2 -1 -1 -2 -4 -6 -7 -7 -7 -7 -8 -10 -11 -13 -14 -16 -17 -18 -20 -22 -23 -24 -25 -25 -24 -24 -23 -22 -22 -22 -24 -25 -25 -24 -22 -18 -14 -10 -7 -5 -5 -5 -5 -5 -6 -6 -7 -7 -7 -7 -8 -8 -8 -9 -9 -10 -11 -12 -13 -12 -11 -9 -7 -5 -3 -1 -1 -2 -4 -6 -7 -8 -9 -10 -12 -15 -19 -22 -24 -24 -19 -11 1 13 23 28 27 27 27 28 29 30 33 36 41 47 53 58 66 72 70 58 46 45 50 57 65 70 76 78 77 75 72 71 71 72 72 67 66 64 63 63 63 64 64 66 68 72 76 78 78 77 74 73 74 74 72 69 67 65 64 63 61 58 55 51 46 42 39 36 34 32 30 28 25 22 20 19 18 18 18 18 19 19 20 21 22 24 25 26 27 27 27 27 26 25 23 22 20 18 17 18 19 21 22 23 23 21 19 18 17 17 18 19 20 20 20 19 18 17 17 16 16 14 13 11 9 6 5 5 7 12 18 23 27 29 29 27 26 26 28 30 33 35 35 34 31 27 23 18 14 11 9 8 8 8 7 7 6 5 5 4 4 4 4 4 4 3 0 -3 -6 -9 -11 -12 -11 -10 -10 -9 -9 -9 -10 -9 -9 -8 -6 -5 -4 -4 -5 -5 -6 -8 -10 -12 -12 -11 -9 -7 -7 -7 -9 -11 -13 -15 -17 -18 -19 -19 -18 -16 -14 -11 -9 -9 -10 -11 -12 -11 -11 -11 -12 -13 -11 -8 -8 -9 -10 -12 -12 -11 -10 -9 -9 -9 -8 -7 -8 -10 -14 -15 -13 -10 -7 -4 -3 -2 -4 -6 -9 -10 -9 -7 -4 -1 3 7 9 11 12 15 16 18 18 17 15 13 10 8 6 3 1 -0 -0 1 3 5 5 4 2 -0 -2 -3 -4 -5 -6 -7 -8 -10 -11 -13 -12 -11 -7 -4 0 3 5 6 5 3 1 0 1 2 5 8 9 7 -11 -13 -15 -15 -15 -14 -14 -13 -13 -12 -13 -14 -15 -17 -18 -17 -16 -15 -14 -14 -14 -14 -14 -12 -8 -6 -3 -2 -1 -3 -4 -6 -6 -5 -6 -6 -6 -7 -8 -11 -13 -16 -18 -20 -22 -23 -25 -26 -26 -26 -27 -27 -26 -27 -27 -28 -28 -28 -27 -26 -24 -22 -18 -14 -10 -7 -5 -4 -3 -2 -1 -1 -2 -3 -4 -4 -5 -5 -7 -8 -10 -12 -15 -17 -16 -14 -11 -8 -5 -2 0 1 2 1 -1 -2 -3 -5 -6 -9 -13 -16 -20 -23 -24 -23 -16 -6 7 20 26 29 30 31 32 33 34 37 42 49 55 60 62 62 57 49 48 50 54 57 61 66 70 73 72 70 68 66 65 63 63 62 63 63 63 64 64 65 68 70 70 70 70 72 76 80 81 82 81 78 75 73 70 68 67 66 65 63 59 55 51 47 43 39 36 34 33 31 29 25 22 19 17 16 16 17 17 18 18 19 21 22 23 25 26 27 28 28 27 26 25 23 21 20 18 18 18 19 21 22 21 20 18 17 16 16 17 18 19 19 20 19 19 19 19 20 21 21 21 19 17 15 13 10 8 9 12 17 22 26 29 29 28 28 28 30 33 36 38 37 36 33 29 24 20 16 13 11 10 10 9 8 7 6 5 4 4 3 4 5 6 6 5 3 -1 -4 -6 -8 -8 -7 -7 -6 -7 -7 -7 -7 -6 -5 -4 -2 -1 -1 -1 -2 -3 -4 -6 -8 -9 -8 -7 -5 -4 -4 -5 -8 -10 -13 -15 -17 -17 -17 -17 -16 -14 -12 -10 -10 -10 -11 -12 -13 -12 -12 -12 -13 -13 -9 -7 -7 -9 -11 -11 -11 -10 -9 -9 -8 -8 -7 -7 -8 -12 -14 -14 -12 -8 -5 -2 -1 -1 -3 -6 -9 -10 -9 -7 -5 -2 3 8 11 13 15 17 18 19 18 16 14 12 9 7 4 2 1 2 3 5 6 6 5 3 1 -1 -2 -4 -5 -6 -7 -8 -10 -12 -13 -14 -13 -11 -7 -3 -0 2 3 3 2 -0 -2 -3 -1 2 5 8 8 -11 -13 -14 -15 -15 -15 -15 -14 -14 -13 -13 -14 -14 -15 -17 -18 -18 -17 -16 -14 -13 -14 -16 -17 -17 -16 -13 -10 -8 -6 -5 -5 -5 -5 -5 -4 -4 -6 -7 -8 -9 -11 -14 -16 -18 -19 -21 -23 -25 -25 -25 -26 -27 -27 -27 -28 -28 -30 -30 -30 -30 -30 -29 -26 -22 -17 -12 -8 -6 -4 -2 -1 0 1 1 1 0 -0 -2 -5 -8 -10 -12 -12 -14 -16 -16 -13 -9 -6 -4 -1 2 3 3 2 2 1 0 -2 -6 -9 -13 -16 -20 -23 -23 -19 -11 0 11 20 27 32 34 35 35 37 41 47 52 54 54 50 44 38 38 40 41 42 45 50 56 60 61 60 59 58 57 56 57 58 60 61 62 63 65 67 70 71 71 68 68 70 72 74 78 84 83 80 77 75 71 69 69 68 68 66 64 60 56 51 47 43 39 37 35 34 32 29 25 21 17 15 15 15 15 16 17 18 19 20 21 23 24 25 27 27 27 27 26 25 23 21 20 19 19 19 20 21 21 20 18 16 15 15 15 16 17 17 17 17 17 18 19 21 22 24 24 24 24 22 21 19 16 13 12 13 16 21 26 29 30 29 29 30 33 36 38 39 39 37 34 30 25 21 18 15 13 11 10 8 7 6 5 4 3 2 2 3 5 6 7 7 5 2 -1 -3 -4 -4 -4 -4 -4 -4 -5 -5 -4 -3 -1 0 2 2 2 2 1 0 -1 -3 -4 -5 -4 -3 -2 -1 -2 -5 -8 -11 -13 -15 -15 -16 -16 -15 -14 -12 -11 -10 -11 -12 -13 -13 -13 -13 -13 -13 -14 -11 -8 -6 -8 -10 -11 -11 -11 -9 -9 -8 -8 -7 -7 -7 -10 -13 -15 -13 -9 -6 -3 -1 0 0 -2 -6 -8 -10 -9 -8 -6 -3 2 8 13 15 17 18 19 19 18 16 13 11 8 5 4 3 3 5 6 7 7 6 4 2 0 -1 -3 -4 -5 -6 -8 -10 -12 -14 -15 -15 -13 -11 -7 -4 -1 1 1 0 -2 -5 -6 -5 -2 2 6 8 -11 -13 -13 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -15 -16 -17 -19 -19 -19 -17 -13 -11 -12 -14 -17 -19 -19 -18 -16 -14 -13 -11 -9 -8 -8 -7 -7 -7 -7 -8 -9 -10 -11 -12 -14 -15 -17 -19 -21 -22 -23 -23 -24 -25 -25 -25 -26 -27 -29 -30 -31 -32 -33 -33 -31 -27 -22 -17 -14 -11 -9 -6 -3 -1 1 2 2 2 -0 -3 -5 -6 -6 -6 -10 -13 -14 -13 -11 -9 -8 -5 -3 0 2 3 4 5 5 3 1 -1 -4 -7 -11 -16 -21 -23 -22 -17 -9 1 12 21 28 31 33 35 37 39 41 39 34 27 19 13 12 13 15 17 21 28 36 44 48 51 52 52 52 52 54 55 57 59 62 67 74 75 73 71 71 73 73 73 72 72 72 72 70 69 68 67 66 66 68 69 69 69 67 64 60 55 51 47 43 40 38 36 35 33 29 24 19 16 14 13 14 14 15 16 17 18 19 20 21 23 24 25 26 26 26 25 24 22 21 21 20 20 21 21 21 20 19 17 15 14 14 14 15 15 15 15 15 15 16 17 20 22 23 25 25 25 26 25 24 22 19 17 16 17 21 26 29 30 30 30 32 35 38 40 40 40 37 34 30 27 23 19 16 14 11 10 8 8 6 5 3 1 0 1 2 4 6 8 8 6 4 1 -1 -1 -1 -1 -1 -2 -3 -3 -2 -1 1 3 5 6 6 5 5 5 4 2 1 -1 -1 -0 0 1 0 -2 -5 -8 -11 -12 -13 -14 -14 -14 -13 -12 -11 -11 -11 -12 -13 -14 -14 -14 -13 -13 -14 -13 -10 -7 -7 -8 -10 -11 -11 -10 -9 -8 -8 -7 -7 -7 -9 -12 -14 -14 -11 -8 -4 -1 1 2 0 -2 -5 -8 -9 -8 -8 -7 -4 1 8 14 17 19 20 20 19 17 15 12 9 7 5 5 6 7 8 8 7 6 5 3 1 -0 -2 -3 -4 -6 -7 -9 -11 -13 -15 -16 -16 -14 -11 -7 -4 -2 -1 -1 -4 -6 -8 -8 -6 -2 3 7 -10 -12 -12 -12 -12 -12 -12 -13 -13 -13 -13 -13 -13 -13 -14 -15 -17 -19 -20 -21 -18 -14 -10 -10 -12 -16 -18 -20 -20 -19 -18 -16 -14 -12 -10 -9 -8 -8 -8 -9 -10 -11 -11 -12 -13 -14 -14 -15 -16 -17 -18 -19 -20 -21 -22 -22 -22 -23 -24 -26 -28 -30 -31 -33 -33 -32 -30 -26 -22 -19 -16 -14 -11 -8 -6 -4 -2 -2 -3 -5 -5 -3 -2 -4 -6 -7 -8 -8 -8 -9 -9 -8 -7 -5 -3 -0 2 4 5 5 5 4 3 2 -1 -6 -12 -18 -22 -23 -22 -17 -9 -0 9 17 21 24 25 25 23 19 13 6 -0 -4 -5 -6 -5 -2 1 7 16 26 35 42 48 51 52 52 54 55 56 57 60 63 69 71 70 70 70 73 74 72 69 68 68 68 67 67 67 66 66 65 65 65 66 71 70 68 64 59 55 51 48 44 41 38 37 36 33 29 23 18 14 13 12 13 14 15 16 17 17 18 18 20 21 22 24 24 24 23 23 22 22 21 21 21 22 22 22 22 20 19 17 15 14 14 14 14 13 13 12 12 12 14 15 17 19 21 22 24 26 28 29 30 27 24 21 19 20 23 28 31 33 32 33 35 37 39 40 41 39 37 34 31 27 24 20 17 14 12 11 10 8 6 4 2 -0 -1 -1 0 3 6 7 8 7 4 3 1 1 1 1 0 -1 -2 -1 -0 2 4 7 8 8 8 8 8 8 7 5 3 2 2 2 3 2 0 -3 -5 -8 -9 -10 -11 -12 -12 -11 -11 -10 -11 -11 -12 -13 -14 -14 -14 -14 -13 -14 -14 -12 -8 -7 -8 -9 -9 -10 -10 -10 -8 -8 -7 -7 -7 -8 -11 -14 -15 -12 -9 -6 -3 0 2 2 1 -2 -5 -7 -7 -8 -8 -8 -7 -0 8 16 20 21 21 20 18 16 13 11 9 7 7 8 9 9 9 8 7 5 4 2 1 -1 -2 -3 -5 -6 -8 -10 -12 -15 -16 -17 -16 -14 -11 -8 -5 -3 -2 -4 -7 -10 -11 -9 -6 -1 4 -10 -10 -11 -10 -10 -10 -10 -10 -10 -11 -11 -11 -11 -11 -11 -12 -14 -16 -18 -21 -21 -19 -15 -11 -9 -11 -14 -17 -19 -19 -18 -17 -16 -15 -13 -11 -10 -9 -9 -9 -10 -11 -11 -12 -13 -14 -13 -12 -12 -13 -13 -14 -15 -17 -18 -19 -20 -20 -20 -21 -23 -24 -26 -28 -30 -31 -32 -30 -27 -25 -22 -21 -19 -17 -15 -12 -10 -9 -11 -10 -8 -5 -4 -6 -6 -6 -5 -4 -5 -6 -6 -7 -8 -8 -7 -6 -4 -2 -0 1 3 4 6 7 7 4 -0 -6 -12 -17 -20 -22 -21 -18 -12 -5 2 7 10 10 9 8 5 2 -1 -3 -6 -8 -9 -9 -7 -4 1 8 17 28 37 44 47 49 50 51 51 50 49 49 51 54 56 59 61 65 67 67 66 64 63 64 65 66 66 66 66 67 67 66 66 70 72 72 68 64 59 56 52 48 44 41 40 39 37 34 29 22 17 14 12 12 13 14 15 15 16 16 16 17 18 19 20 21 21 21 21 21 21 21 21 21 22 22 23 23 22 21 20 18 16 15 15 14 14 13 12 11 11 11 12 13 14 15 17 19 22 26 30 33 34 32 29 25 23 23 27 32 35 37 36 36 37 38 40 40 40 38 36 34 31 27 24 20 17 15 14 13 11 9 6 3 0 -1 -2 -2 -1 1 4 6 7 6 5 3 3 3 2 2 1 -0 -1 -0 1 4 7 9 10 10 10 11 11 11 9 7 5 4 4 4 4 2 -0 -3 -5 -6 -7 -8 -9 -9 -9 -9 -9 -10 -11 -12 -13 -13 -14 -14 -14 -13 -14 -14 -13 -10 -8 -8 -8 -8 -9 -10 -10 -9 -8 -7 -7 -7 -8 -10 -13 -15 -13 -11 -8 -4 -1 2 3 3 1 -2 -4 -6 -6 -7 -8 -9 -8 -1 9 18 21 22 21 20 18 15 13 11 10 10 10 11 10 10 8 7 6 5 3 1 -0 -2 -3 -4 -5 -7 -8 -11 -13 -16 -18 -18 -17 -14 -11 -8 -5 -4 -4 -6 -10 -13 -12 -9 -5 0 -9 -9 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -10 -11 -14 -17 -20 -21 -20 -16 -12 -10 -11 -13 -15 -16 -16 -16 -16 -16 -15 -13 -12 -11 -10 -10 -10 -10 -10 -11 -13 -14 -13 -12 -11 -11 -11 -11 -11 -13 -15 -16 -18 -19 -19 -19 -20 -20 -22 -23 -25 -27 -28 -28 -27 -26 -25 -24 -24 -22 -20 -19 -17 -16 -15 -13 -11 -9 -8 -10 -10 -9 -6 -4 -5 -4 -4 -5 -6 -7 -8 -9 -9 -9 -8 -6 -4 -2 1 4 6 6 6 4 0 -4 -8 -13 -17 -20 -20 -18 -14 -9 -4 0 4 8 9 9 8 5 2 -1 -3 -5 -6 -7 -7 -5 -0 7 17 25 31 35 36 36 35 33 29 27 26 28 31 35 39 43 48 52 55 56 57 59 59 60 61 64 67 66 65 65 67 69 71 72 71 70 65 60 56 52 49 45 42 41 39 38 34 28 22 17 14 12 13 13 14 15 15 14 14 15 15 16 18 18 19 19 18 18 19 19 19 19 20 21 22 22 23 23 22 21 20 18 17 17 16 15 13 12 11 11 11 11 11 11 11 13 15 19 25 31 35 36 35 32 29 27 29 33 38 41 41 40 39 39 40 40 40 39 38 36 33 30 27 23 21 19 18 17 15 12 9 5 2 -0 -2 -4 -4 -3 -1 2 4 6 5 4 4 3 3 3 2 1 -0 -0 1 3 6 9 11 12 13 13 14 14 12 10 7 6 5 6 5 4 3 0 -2 -3 -4 -5 -6 -7 -7 -7 -8 -9 -11 -12 -13 -13 -13 -14 -13 -13 -14 -14 -14 -12 -10 -8 -7 -7 -7 -9 -10 -10 -9 -7 -7 -7 -7 -9 -11 -14 -14 -12 -9 -6 -3 1 3 4 4 1 -1 -3 -4 -4 -5 -7 -9 -9 -2 10 19 22 22 21 19 17 15 14 13 12 12 12 12 11 9 8 6 5 3 2 0 -1 -2 -3 -3 -5 -6 -9 -11 -14 -17 -18 -18 -17 -14 -11 -8 -5 -4 -5 -8 -12 -13 -12 -9 -4 -10 -10 -10 -10 -10 -10 -10 -10 -9 -9 -8 -8 -8 -8 -8 -8 -8 -9 -11 -13 -15 -19 -21 -21 -17 -13 -11 -11 -12 -13 -14 -14 -15 -15 -15 -14 -14 -13 -12 -11 -10 -9 -9 -10 -11 -11 -11 -9 -8 -8 -8 -8 -9 -10 -11 -13 -15 -17 -18 -19 -20 -20 -20 -22 -23 -24 -24 -23 -23 -23 -24 -25 -24 -23 -22 -21 -20 -19 -17 -15 -14 -12 -11 -10 -10 -10 -10 -9 -7 -6 -5 -5 -5 -6 -7 -8 -9 -9 -10 -11 -11 -10 -8 -6 -3 -1 2 3 5 6 5 2 -3 -9 -14 -17 -18 -17 -15 -10 -4 1 6 9 10 10 8 7 5 3 1 -2 -6 -8 -8 -7 -4 0 6 10 13 13 14 12 10 8 6 7 9 12 15 19 23 29 34 38 42 44 45 45 47 52 56 57 58 59 62 64 67 69 70 71 69 66 61 56 52 49 45 43 41 40 38 34 28 22 17 14 13 14 14 14 14 14 13 13 14 15 16 17 17 17 17 17 17 17 17 17 18 18 19 20 21 22 23 23 23 22 21 20 19 18 17 16 14 14 13 12 11 10 9 8 9 12 16 23 30 35 38 37 35 32 32 35 40 46 47 46 44 43 42 42 42 41 39 37 35 32 29 26 24 22 22 21 19 16 12 8 5 2 -1 -3 -5 -5 -4 -3 -1 2 3 3 3 2 2 2 2 1 -0 -1 -1 0 3 5 8 9 11 13 15 16 15 12 9 7 7 7 7 7 6 4 2 0 -1 -2 -3 -4 -4 -5 -6 -8 -10 -11 -12 -13 -13 -14 -14 -14 -14 -14 -14 -13 -11 -10 -8 -6 -5 -7 -8 -9 -9 -8 -7 -6 -6 -7 -9 -13 -14 -13 -11 -8 -5 -2 2 4 5 4 1 -1 -2 -2 -2 -3 -5 -9 -10 -3 11 19 22 21 20 19 18 17 16 16 15 14 13 11 10 8 7 5 4 2 1 -0 -1 -1 -2 -3 -4 -6 -9 -12 -15 -17 -18 -18 -17 -15 -12 -9 -6 -5 -5 -9 -13 -13 -12 -8 -13 -12 -12 -11 -11 -11 -11 -11 -11 -10 -10 -9 -9 -9 -9 -9 -8 -9 -10 -11 -11 -15 -18 -20 -20 -16 -12 -10 -10 -11 -12 -12 -13 -14 -14 -14 -14 -14 -14 -12 -10 -9 -7 -7 -7 -7 -8 -8 -6 -5 -5 -5 -6 -7 -8 -8 -10 -13 -16 -18 -20 -20 -21 -21 -22 -22 -22 -20 -19 -20 -21 -23 -24 -23 -23 -22 -21 -21 -20 -18 -15 -12 -10 -9 -10 -11 -11 -11 -10 -8 -7 -6 -6 -6 -6 -7 -7 -7 -8 -9 -11 -12 -12 -12 -11 -10 -8 -4 -1 3 6 7 6 3 -1 -6 -10 -13 -15 -15 -13 -9 -4 1 5 8 10 11 10 9 9 5 -1 -6 -8 -8 -11 -13 -12 -9 -5 -3 -1 -0 1 3 4 5 6 6 5 5 6 8 11 14 18 21 22 24 26 30 34 37 40 43 47 52 57 61 65 68 69 68 64 60 56 52 48 45 43 41 41 38 34 27 21 17 15 14 14 14 14 14 13 13 14 14 15 16 17 17 16 16 16 16 16 16 16 16 16 17 19 20 22 24 24 24 24 23 23 22 21 20 19 18 16 15 13 12 10 8 6 6 8 14 21 28 34 38 38 36 35 37 41 48 53 53 51 48 46 45 45 43 42 40 37 34 31 27 25 24 24 23 22 20 16 12 8 5 2 -1 -3 -5 -6 -6 -6 -4 -2 -2 -1 -2 -2 -2 -1 -2 -2 -3 -3 -3 -3 -2 -1 -1 1 4 8 13 15 14 11 8 7 7 8 8 8 7 5 4 2 1 0 -1 -2 -3 -5 -7 -9 -11 -12 -13 -13 -14 -14 -14 -14 -14 -14 -14 -12 -11 -9 -7 -5 -5 -6 -8 -10 -9 -8 -7 -6 -6 -7 -11 -13 -14 -12 -10 -7 -4 -0 3 5 5 3 2 0 0 1 2 1 -2 -7 -12 -2 11 20 21 21 21 21 21 20 20 19 17 15 12 10 8 7 6 4 3 2 1 0 0 -0 -1 -2 -4 -6 -8 -11 -14 -16 -18 -18 -17 -15 -12 -10 -7 -5 -7 -10 -13 -14 -11 -15 -15 -14 -12 -11 -12 -12 -12 -12 -12 -11 -11 -10 -10 -9 -9 -10 -10 -11 -12 -11 -12 -15 -17 -18 -17 -14 -11 -9 -8 -9 -10 -11 -12 -12 -12 -13 -14 -15 -14 -12 -10 -7 -5 -3 -1 -1 -1 -1 -1 -0 -1 -3 -4 -4 -5 -6 -8 -11 -14 -17 -19 -19 -20 -21 -21 -21 -19 -17 -17 -19 -20 -21 -22 -22 -22 -22 -22 -22 -21 -18 -15 -12 -10 -9 -9 -10 -11 -11 -10 -9 -8 -8 -7 -7 -7 -6 -6 -6 -7 -8 -9 -10 -12 -13 -14 -15 -15 -12 -8 -3 1 4 6 6 4 -0 -5 -9 -13 -14 -13 -11 -7 -3 2 6 8 9 10 10 9 8 6 3 -1 -4 -7 -9 -10 -11 -10 -8 -6 -3 1 5 8 11 12 12 11 8 6 4 2 1 2 3 4 5 9 12 15 18 22 28 34 42 49 55 61 65 67 65 63 60 56 52 48 45 42 41 41 38 33 27 21 18 16 15 15 14 14 14 14 15 15 16 17 18 18 18 17 17 17 16 16 15 14 14 14 16 18 20 23 24 25 26 26 26 25 25 24 23 22 21 19 17 15 13 10 8 6 5 7 12 19 26 32 37 38 38 38 41 48 55 59 58 55 52 50 49 47 46 43 41 37 33 29 26 25 24 25 24 23 20 16 12 8 6 3 0 -2 -5 -7 -8 -8 -7 -6 -6 -6 -6 -6 -7 -7 -7 -7 -8 -9 -10 -11 -12 -13 -12 -9 -4 2 8 10 10 7 4 4 5 7 9 10 9 7 5 4 3 2 0 -1 -3 -5 -7 -9 -11 -12 -13 -14 -15 -15 -15 -15 -14 -14 -13 -12 -11 -9 -5 -4 -4 -6 -8 -9 -9 -7 -6 -5 -6 -8 -12 -14 -13 -11 -9 -6 -3 1 4 5 4 3 2 2 3 5 6 5 2 -5 -10 -2 11 21 21 22 23 24 24 24 23 20 17 14 11 9 7 6 5 3 2 2 2 1 1 0 -0 -2 -3 -5 -8 -11 -13 -16 -17 -18 -17 -16 -13 -10 -7 -7 -8 -12 -14 -14 -15 -14 -13 -12 -12 -12 -11 -12 -12 -12 -12 -12 -11 -11 -11 -10 -11 -12 -13 -13 -12 -12 -12 -14 -15 -16 -16 -14 -11 -9 -8 -9 -10 -10 -10 -9 -10 -12 -13 -14 -13 -12 -11 -8 -4 -1 2 3 4 4 4 3 1 -1 -2 -4 -5 -6 -7 -8 -11 -14 -16 -17 -18 -18 -17 -16 -16 -16 -17 -19 -20 -20 -21 -21 -22 -23 -23 -23 -22 -20 -17 -14 -12 -10 -9 -10 -10 -10 -9 -9 -8 -8 -8 -7 -6 -6 -6 -5 -6 -6 -7 -8 -10 -12 -15 -17 -18 -18 -15 -11 -6 -1 3 5 4 2 -2 -6 -10 -11 -11 -11 -9 -6 -2 2 5 8 8 9 9 10 9 7 6 2 -2 -6 -9 -12 -13 -13 -11 -8 -3 2 7 11 14 15 16 15 13 10 6 3 1 1 1 3 5 6 8 11 14 20 27 35 43 51 58 63 65 64 62 60 56 52 48 44 42 42 40 37 32 26 21 18 16 15 15 15 15 15 16 17 17 18 19 20 20 20 19 19 18 17 15 14 13 13 14 16 19 22 24 25 26 27 27 28 28 28 28 27 25 23 21 19 17 14 11 8 5 5 6 10 16 23 30 35 38 39 40 46 54 61 64 62 59 56 54 52 50 48 45 42 37 33 28 26 25 25 26 25 23 19 16 12 10 7 5 2 -1 -4 -7 -8 -9 -8 -8 -8 -8 -8 -9 -9 -10 -11 -11 -12 -12 -12 -12 -12 -12 -13 -13 -10 -5 -0 2 2 -1 -2 -1 2 6 9 10 9 8 7 5 4 3 1 -1 -3 -6 -8 -10 -11 -12 -13 -14 -15 -16 -16 -15 -15 -14 -13 -12 -11 -8 -4 -3 -3 -6 -8 -9 -8 -7 -5 -4 -6 -9 -12 -14 -12 -10 -8 -5 -2 2 4 4 4 3 2 3 5 8 9 9 5 -3 -8 -4 13 20 23 25 27 28 28 27 24 20 16 12 9 8 7 5 4 3 3 3 2 2 2 1 -0 -1 -3 -5 -7 -10 -12 -15 -17 -18 -18 -17 -14 -11 -9 -8 -10 -14 -15 -13 -12 -12 -12 -12 -11 -10 -10 -10 -10 -10 -11 -11 -11 -12 -13 -13 -14 -15 -16 -14 -12 -12 -13 -14 -16 -16 -15 -14 -12 -10 -9 -9 -9 -9 -8 -8 -9 -10 -11 -12 -13 -14 -13 -11 -7 -3 0 3 4 5 5 3 1 0 -0 -1 -1 -1 -2 -5 -8 -11 -12 -13 -12 -12 -12 -12 -13 -15 -17 -18 -19 -19 -20 -21 -22 -24 -24 -24 -24 -23 -20 -16 -12 -10 -9 -9 -8 -8 -7 -7 -8 -8 -8 -7 -7 -6 -6 -5 -5 -5 -6 -6 -8 -11 -14 -17 -20 -21 -20 -18 -14 -9 -4 0 2 2 -1 -5 -7 -9 -10 -11 -10 -8 -5 -2 3 5 7 9 10 11 11 9 7 5 2 -2 -7 -11 -13 -14 -12 -8 -5 -0 4 8 12 15 17 18 19 17 15 12 10 8 7 8 9 10 12 12 15 19 25 32 41 49 56 61 62 62 62 60 56 52 47 44 43 42 40 37 31 25 21 18 16 15 15 15 16 16 17 18 19 20 21 22 22 22 21 20 19 17 15 13 13 14 16 19 21 23 25 26 27 28 29 30 31 31 30 29 27 25 23 21 18 15 12 8 6 4 5 7 13 21 29 35 39 40 43 51 59 65 67 64 61 59 57 56 54 51 47 43 37 32 29 27 27 27 27 25 22 19 16 13 11 9 7 4 0 -3 -6 -7 -7 -7 -7 -6 -7 -7 -9 -11 -12 -12 -12 -11 -8 -7 -6 -8 -10 -12 -13 -13 -11 -8 -6 -6 -6 -5 -3 -1 3 7 9 10 9 8 7 5 3 1 -1 -4 -7 -9 -10 -11 -12 -14 -15 -16 -17 -17 -16 -15 -14 -13 -12 -10 -7 -3 -1 -3 -6 -8 -9 -8 -6 -4 -4 -6 -10 -13 -12 -10 -9 -7 -5 -1 2 3 3 2 1 2 4 7 10 12 11 7 -0 -8 -6 10 21 26 29 31 32 31 28 24 18 13 10 8 7 7 5 5 4 4 3 3 2 2 1 -0 -2 -3 -5 -7 -9 -11 -14 -16 -17 -18 -17 -15 -12 -11 -10 -12 -15 -12 -12 -11 -11 -12 -11 -10 -10 -10 -10 -10 -10 -10 -10 -11 -13 -14 -14 -15 -15 -15 -14 -13 -13 -13 -14 -14 -15 -15 -14 -13 -11 -10 -10 -10 -9 -8 -7 -7 -7 -9 -11 -14 -16 -16 -14 -11 -8 -5 -3 -1 -0 -1 -1 -1 0 1 2 2 1 -1 -3 -5 -7 -7 -6 -5 -6 -7 -8 -10 -12 -14 -15 -16 -17 -19 -21 -23 -24 -25 -25 -25 -24 -20 -16 -12 -9 -8 -7 -6 -5 -6 -6 -7 -7 -8 -8 -7 -7 -7 -6 -6 -6 -6 -6 -7 -9 -12 -15 -19 -22 -23 -23 -21 -16 -11 -5 -2 -1 -3 -5 -6 -8 -10 -10 -10 -10 -8 -4 -0 3 6 9 11 11 8 7 7 7 5 2 -3 -7 -10 -11 -10 -8 -6 -3 1 5 9 12 15 18 20 22 22 19 16 12 11 11 12 14 16 18 20 23 27 33 40 47 53 57 60 62 62 60 57 52 47 44 42 41 39 36 30 25 20 17 15 14 15 15 16 17 18 19 20 21 22 23 23 22 21 20 18 15 14 13 14 16 19 22 24 25 26 27 29 30 31 32 33 33 33 31 29 27 24 22 19 16 12 8 5 3 2 3 9 18 27 34 39 41 47 54 62 67 67 65 63 61 60 58 56 53 49 44 38 34 31 30 29 28 27 25 22 19 16 14 13 11 8 5 1 -2 -4 -4 -4 -4 -3 -4 -5 -7 -10 -12 -13 -13 -11 -9 -6 -6 -7 -10 -12 -12 -13 -13 -13 -11 -8 -6 -5 -5 -6 -4 0 5 8 10 10 9 7 6 3 1 -2 -5 -7 -9 -10 -12 -13 -14 -16 -18 -18 -17 -16 -15 -13 -12 -11 -9 -6 -2 -1 -3 -6 -8 -9 -7 -5 -4 -4 -7 -11 -12 -11 -9 -8 -7 -4 -1 1 2 1 0 0 2 5 8 11 13 13 9 2 -7 -6 4 18 28 31 33 33 32 28 22 15 11 9 8 8 7 6 5 5 4 4 3 2 2 0 -1 -2 -3 -5 -6 -8 -11 -13 -15 -16 -17 -17 -15 -14 -12 -12 -14 -8 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -10 -10 -10 -11 -12 -12 -13 -14 -15 -15 -15 -14 -13 -13 -13 -13 -14 -15 -15 -14 -13 -12 -12 -12 -12 -12 -10 -9 -7 -6 -8 -11 -14 -17 -18 -18 -17 -15 -14 -12 -11 -10 -10 -8 -7 -4 -2 0 1 -0 -1 -2 -3 -1 0 2 1 -0 -2 -4 -6 -8 -9 -11 -12 -15 -17 -20 -21 -22 -23 -25 -25 -23 -19 -16 -13 -10 -8 -6 -5 -4 -4 -5 -6 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -6 -7 -8 -10 -13 -16 -20 -23 -25 -25 -22 -17 -11 -7 -5 -5 -6 -6 -8 -8 -9 -10 -10 -10 -8 -4 -0 4 8 9 8 8 9 10 10 7 3 -1 -4 -6 -7 -7 -7 -6 -5 -1 2 5 9 12 16 21 25 26 24 20 18 16 15 16 18 20 22 24 26 32 37 43 47 52 56 59 60 60 60 58 52 48 44 42 41 39 35 29 23 18 15 14 13 14 14 15 16 17 18 19 21 22 22 22 21 19 17 14 13 12 13 16 19 22 24 26 28 29 31 32 33 34 35 35 35 34 33 31 28 26 23 19 15 11 7 3 -1 -3 -1 5 13 23 30 36 42 49 57 63 66 67 66 64 63 62 60 58 54 50 45 40 37 34 33 31 30 28 25 21 18 17 16 14 12 9 5 2 0 -1 -1 -0 -0 -1 -2 -5 -8 -11 -13 -14 -14 -12 -8 -6 -6 -8 -11 -13 -13 -14 -13 -12 -9 -6 -4 -4 -7 -8 -7 -3 3 9 11 11 10 8 5 3 0 -3 -5 -8 -10 -11 -12 -13 -15 -17 -18 -18 -17 -15 -13 -12 -11 -10 -9 -6 -2 -1 -3 -6 -9 -9 -7 -5 -3 -5 -9 -11 -11 -10 -9 -8 -6 -3 -1 1 0 -1 -2 -1 1 5 9 13 14 14 11 4 -3 -7 -5 7 20 27 31 32 32 26 19 13 10 10 9 8 7 6 6 5 4 4 3 2 1 -1 -2 -3 -4 -5 -6 -8 -10 -11 -13 -15 -16 -17 -16 -15 -13 -14 -3 -4 -4 -5 -5 -6 -6 -6 -7 -7 -8 -8 -9 -9 -9 -9 -10 -10 -11 -12 -13 -13 -13 -12 -12 -12 -12 -12 -13 -13 -14 -13 -13 -14 -14 -15 -16 -16 -14 -12 -9 -7 -8 -11 -14 -16 -18 -18 -19 -20 -21 -21 -21 -21 -20 -18 -15 -11 -7 -5 -4 -5 -4 -3 -0 2 5 6 5 3 1 -1 -3 -3 -4 -6 -8 -12 -15 -16 -17 -18 -19 -21 -21 -21 -19 -17 -15 -12 -9 -7 -5 -3 -2 -3 -4 -4 -5 -6 -7 -7 -8 -7 -7 -7 -7 -7 -7 -7 -8 -10 -13 -16 -20 -23 -25 -25 -21 -16 -12 -10 -8 -8 -7 -6 -7 -8 -10 -12 -13 -11 -9 -6 -1 4 8 10 12 12 11 10 8 5 2 -1 -2 -3 -4 -5 -6 -5 -3 -1 2 5 9 14 20 24 27 26 25 23 21 20 20 21 23 25 28 32 37 42 47 51 55 57 59 61 62 64 58 53 48 44 42 41 39 33 27 20 16 13 12 12 12 13 13 13 14 16 18 19 20 19 18 17 14 12 10 9 10 13 17 20 22 24 27 30 32 34 35 36 37 37 37 37 36 34 32 29 26 23 19 14 10 5 0 -5 -7 -6 -1 7 15 22 30 40 50 59 63 65 66 65 65 64 62 61 58 55 51 47 43 40 38 36 34 31 28 24 21 19 18 17 15 12 9 6 4 3 3 3 3 2 1 -2 -5 -9 -12 -14 -15 -14 -11 -8 -6 -6 -9 -12 -14 -15 -15 -15 -12 -8 -4 -2 -4 -8 -10 -9 -5 3 9 12 12 10 7 5 3 -0 -3 -6 -8 -10 -11 -12 -14 -16 -17 -18 -17 -16 -14 -12 -11 -10 -10 -9 -6 -2 -1 -3 -7 -9 -8 -6 -4 -3 -6 -9 -11 -10 -9 -8 -7 -5 -3 -1 -0 -2 -3 -3 -2 2 6 10 13 15 14 11 6 1 -4 -7 -5 2 13 23 30 28 22 16 11 10 10 9 8 7 7 6 5 4 3 2 1 -1 -2 -3 -4 -4 -5 -6 -7 -9 -10 -12 -14 -16 -17 -17 -15 -14 -6 -5 -4 -3 -3 -3 -3 -4 -4 -4 -4 -5 -6 -7 -7 -6 -6 -6 -6 -7 -8 -9 -8 -8 -8 -8 -8 -9 -10 -11 -11 -12 -13 -14 -15 -16 -17 -18 -19 -18 -16 -12 -10 -9 -10 -12 -13 -14 -16 -17 -20 -22 -24 -25 -26 -26 -24 -21 -17 -14 -12 -11 -10 -8 -6 -3 -0 3 5 4 3 2 1 1 0 -1 -3 -5 -7 -9 -11 -13 -14 -16 -17 -18 -18 -18 -17 -15 -13 -10 -8 -6 -4 -3 -3 -3 -3 -4 -5 -6 -6 -6 -6 -6 -6 -7 -7 -8 -8 -8 -9 -10 -12 -15 -19 -22 -24 -23 -19 -16 -13 -11 -10 -8 -8 -7 -8 -10 -13 -16 -17 -16 -13 -7 -3 2 6 8 9 12 14 13 9 5 4 2 1 -1 -3 -5 -5 -5 -3 -1 2 6 11 16 22 27 29 29 28 27 25 24 24 25 29 33 37 43 49 54 57 59 61 64 66 69 64 59 53 48 44 42 41 37 31 23 17 13 11 10 10 10 10 10 10 11 13 15 16 16 15 13 11 8 6 6 7 10 13 15 16 17 19 21 24 27 29 32 34 35 37 37 38 37 35 33 30 26 22 18 13 8 2 -3 -8 -11 -10 -6 -1 5 12 23 36 50 58 62 64 65 65 64 63 62 60 58 56 53 50 47 44 42 39 36 32 27 24 22 20 19 18 15 12 9 7 6 6 7 7 6 5 2 -2 -6 -10 -13 -15 -16 -14 -10 -7 -5 -7 -11 -13 -15 -16 -16 -15 -11 -6 -1 -1 -5 -10 -12 -11 -5 4 10 13 12 9 7 5 2 -0 -4 -6 -9 -11 -12 -13 -14 -16 -17 -17 -16 -14 -13 -12 -11 -10 -10 -9 -5 -3 -1 -4 -7 -8 -8 -6 -4 -5 -8 -10 -10 -9 -8 -7 -6 -4 -2 -1 -2 -3 -4 -4 -1 3 8 11 13 14 13 11 9 5 0 -3 -5 -6 -5 5 18 21 17 11 10 10 9 8 7 7 7 6 5 4 3 1 -1 -2 -3 -4 -5 -5 -6 -6 -7 -8 -9 -11 -13 -16 -17 -17 -15 -13 -11 -9 -6 -4 -3 -2 -2 -3 -3 -3 -4 -5 -5 -4 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -3 -4 -5 -7 -8 -10 -11 -12 -13 -14 -14 -16 -18 -20 -21 -20 -16 -13 -11 -10 -10 -11 -12 -14 -16 -18 -20 -22 -23 -24 -24 -23 -21 -19 -17 -16 -15 -14 -13 -11 -9 -5 -3 -1 0 1 2 2 2 1 0 -2 -4 -6 -8 -9 -9 -10 -11 -13 -14 -15 -16 -15 -14 -13 -11 -9 -7 -5 -4 -3 -2 -2 -2 -3 -3 -4 -5 -5 -6 -6 -7 -7 -8 -8 -8 -8 -9 -10 -12 -15 -18 -21 -22 -20 -18 -16 -13 -11 -9 -8 -8 -9 -11 -14 -17 -20 -20 -17 -15 -11 -5 -1 3 7 11 13 14 12 11 9 8 6 3 -1 -4 -5 -6 -5 -3 -1 2 6 12 19 25 30 32 33 32 30 28 28 32 35 39 45 51 57 60 62 64 66 68 70 68 63 58 54 48 44 42 40 35 28 20 14 10 8 7 7 7 6 6 6 8 10 11 12 11 9 7 5 3 3 3 5 7 7 6 4 4 4 6 8 10 13 16 20 25 29 33 35 36 35 33 30 26 22 17 12 6 0 -5 -10 -12 -12 -10 -8 -4 3 15 31 46 56 61 64 64 64 63 61 60 59 57 56 54 52 50 47 44 41 37 32 28 25 24 23 21 18 15 12 9 8 9 9 10 10 9 6 2 -2 -7 -11 -14 -16 -15 -13 -9 -5 -6 -9 -12 -14 -15 -16 -16 -14 -10 -5 -1 -2 -7 -12 -14 -11 -3 6 12 13 10 8 6 4 2 -1 -4 -7 -9 -11 -12 -13 -14 -16 -16 -16 -14 -13 -12 -11 -10 -10 -10 -8 -5 -2 -2 -4 -7 -8 -8 -6 -5 -7 -9 -10 -9 -8 -7 -7 -6 -4 -2 -2 -3 -4 -5 -3 0 4 8 11 12 11 10 9 9 7 4 1 -0 -2 -4 -7 -1 8 8 7 8 7 6 6 6 6 6 6 5 4 2 -0 -2 -4 -5 -5 -6 -6 -6 -6 -6 -7 -9 -11 -13 -16 -17 -16 -18 -16 -14 -11 -8 -5 -4 -3 -3 -4 -5 -6 -7 -7 -5 -3 -4 -4 -4 -2 -0 1 2 2 1 1 1 1 -1 -3 -5 -7 -9 -10 -10 -11 -12 -14 -16 -18 -20 -21 -20 -18 -15 -12 -11 -11 -12 -13 -14 -16 -18 -19 -20 -21 -21 -21 -20 -19 -18 -17 -16 -16 -16 -15 -15 -13 -12 -9 -7 -5 -3 -1 -0 0 0 -1 -2 -4 -6 -8 -8 -8 -8 -9 -10 -11 -12 -13 -12 -12 -12 -12 -11 -9 -7 -5 -3 -2 -1 -1 -1 -2 -2 -3 -4 -5 -5 -6 -7 -7 -8 -9 -9 -9 -9 -10 -12 -16 -18 -19 -20 -19 -17 -14 -12 -10 -9 -10 -11 -13 -14 -17 -20 -19 -19 -18 -16 -14 -9 -5 -0 4 8 11 12 13 13 12 10 5 1 -2 -4 -5 -5 -4 -3 -1 2 7 14 22 29 34 37 36 34 33 36 39 42 47 53 59 62 64 65 66 67 69 69 66 63 60 53 47 44 41 38 32 24 17 11 8 6 6 5 4 3 2 3 5 7 8 7 5 4 2 1 1 1 1 1 -1 -4 -6 -8 -9 -9 -9 -8 -5 -3 1 5 10 15 22 27 30 32 31 29 26 22 17 12 6 0 -5 -9 -11 -11 -11 -11 -10 -5 8 25 40 52 60 63 63 63 61 60 58 57 55 54 53 52 51 48 45 42 37 33 31 28 27 25 22 18 14 11 10 10 11 13 13 13 10 7 2 -3 -8 -12 -15 -16 -15 -12 -7 -5 -7 -10 -13 -15 -15 -16 -15 -14 -10 -5 -3 -5 -9 -13 -13 -9 -0 9 13 12 10 8 6 4 2 -1 -4 -7 -10 -11 -12 -13 -14 -15 -16 -15 -14 -12 -11 -10 -10 -10 -10 -8 -5 -2 -3 -5 -7 -9 -8 -7 -7 -8 -10 -9 -8 -7 -7 -6 -5 -4 -3 -3 -4 -6 -5 -3 1 5 8 10 10 9 8 7 6 5 4 5 6 5 1 -7 -13 -6 -2 1 2 2 2 2 3 4 5 6 5 4 1 -1 -3 -4 -5 -6 -7 -7 -6 -6 -6 -7 -9 -11 -14 -16 -17 -16 -15 -14 -14 -13 -10 -8 -6 -6 -6 -7 -7 -7 -7 -7 -7 -8 -9 -10 -9 -7 -5 -3 -3 -3 -3 -1 -1 -1 -2 -3 -5 -7 -8 -9 -10 -11 -12 -13 -14 -16 -18 -19 -19 -18 -16 -14 -13 -13 -13 -14 -15 -17 -18 -18 -19 -19 -18 -18 -18 -17 -16 -15 -14 -15 -15 -16 -16 -16 -15 -14 -12 -10 -8 -6 -4 -3 -2 -3 -3 -5 -6 -7 -6 -6 -6 -7 -7 -8 -9 -9 -9 -10 -11 -12 -12 -11 -9 -7 -5 -3 -2 -1 -1 -1 -1 -2 -3 -3 -4 -4 -5 -7 -8 -9 -9 -9 -9 -10 -11 -12 -14 -16 -18 -18 -17 -15 -13 -11 -9 -10 -10 -11 -13 -15 -15 -17 -18 -18 -19 -18 -15 -11 -7 -2 3 7 10 12 13 13 11 9 6 1 -2 -5 -5 -5 -4 -3 -1 3 9 17 25 32 36 37 37 39 43 45 49 54 60 62 63 64 65 65 66 68 68 68 66 59 51 46 42 40 36 29 21 14 9 7 6 5 3 2 0 -0 2 3 4 4 2 1 1 0 -1 -2 -3 -3 -4 -6 -9 -11 -13 -15 -16 -16 -16 -15 -13 -10 -7 -3 2 7 13 18 22 24 24 24 21 18 12 6 0 -5 -8 -8 -8 -10 -13 -14 -11 0 15 32 46 55 60 62 62 60 58 56 54 53 53 52 52 50 48 45 42 39 36 34 32 29 26 21 17 14 11 12 13 15 15 15 14 11 7 2 -3 -8 -12 -15 -15 -14 -9 -6 -5 -8 -11 -14 -15 -15 -16 -16 -15 -10 -6 -5 -7 -11 -13 -12 -6 2 11 13 11 9 7 6 4 1 -2 -5 -8 -10 -11 -12 -13 -14 -15 -15 -14 -13 -12 -10 -10 -9 -10 -10 -8 -5 -3 -3 -5 -8 -9 -8 -7 -8 -9 -9 -8 -7 -7 -7 -7 -6 -4 -4 -5 -5 -6 -5 -2 1 5 7 8 8 7 6 5 3 2 3 6 9 9 2 -10 -14 -9 -6 -6 -5 -4 -3 -2 -1 1 4 5 5 3 0 -2 -3 -5 -6 -7 -8 -7 -6 -6 -6 -7 -9 -11 -14 -16 -13 -10 -10 -10 -12 -13 -12 -11 -10 -10 -7 -6 -6 -6 -7 -8 -10 -11 -11 -11 -11 -11 -10 -9 -9 -9 -7 -7 -6 -6 -5 -6 -6 -7 -8 -9 -10 -10 -11 -12 -13 -14 -15 -17 -18 -18 -17 -16 -15 -14 -14 -15 -15 -16 -17 -17 -17 -17 -17 -17 -16 -15 -13 -12 -12 -12 -13 -14 -15 -16 -16 -16 -15 -14 -12 -10 -8 -7 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -5 -5 -6 -6 -7 -9 -10 -11 -12 -11 -11 -9 -8 -6 -4 -3 -2 -2 -1 -1 -1 -1 -2 -2 -3 -5 -6 -8 -9 -9 -9 -9 -9 -9 -10 -12 -14 -16 -16 -16 -14 -11 -10 -9 -9 -10 -11 -12 -13 -14 -15 -17 -18 -18 -17 -15 -12 -8 -4 1 5 8 10 10 10 10 7 3 -2 -5 -6 -6 -3 -3 -2 -1 2 9 19 28 34 37 40 44 46 49 54 61 60 61 62 63 63 63 65 70 73 71 65 57 50 45 41 39 34 27 19 13 8 7 5 4 2 -0 -1 -0 1 1 1 1 0 0 -1 -3 -4 -3 -2 -2 -3 -6 -9 -12 -14 -16 -18 -19 -19 -18 -17 -16 -15 -12 -9 -5 -1 4 9 13 16 18 19 17 13 7 0 -5 -6 -5 -6 -9 -14 -16 -15 -8 4 19 35 46 54 59 60 58 56 53 52 51 52 52 51 49 47 44 42 41 39 37 34 30 25 21 17 14 14 15 16 17 18 17 15 12 7 2 -4 -9 -13 -15 -15 -12 -8 -5 -6 -8 -12 -14 -15 -16 -16 -17 -14 -11 -7 -6 -8 -11 -13 -11 -5 5 10 12 10 8 7 6 4 1 -2 -5 -8 -10 -11 -12 -12 -14 -14 -14 -13 -12 -11 -10 -9 -9 -10 -10 -7 -4 -3 -3 -6 -9 -10 -9 -8 -9 -10 -9 -8 -8 -9 -9 -8 -7 -7 -7 -6 -7 -7 -5 -2 1 4 6 6 6 6 4 2 -0 1 3 6 9 7 -1 -13 -10 -6 -5 -8 -10 -9 -7 -6 -5 -2 1 3 4 2 -0 -2 -3 -5 -7 -9 -9 -8 -7 -6 -7 -8 -9 -11 -14 -17 -16 -14 -12 -11 -10 -10 -10 -9 -8 -8 -7 -6 -6 -6 -6 -7 -7 -8 -8 -9 -9 -10 -10 -11 -12 -11 -11 -10 -10 -9 -7 -6 -5 -6 -6 -7 -8 -8 -9 -9 -10 -11 -13 -14 -15 -16 -17 -17 -16 -15 -14 -14 -15 -15 -16 -17 -17 -16 -15 -15 -14 -12 -11 -10 -9 -9 -9 -10 -11 -12 -14 -16 -17 -17 -16 -15 -13 -11 -9 -7 -5 -4 -3 -2 -2 -1 -1 -1 -2 -3 -4 -5 -6 -7 -9 -10 -11 -11 -11 -11 -10 -9 -8 -7 -5 -4 -3 -2 -2 -1 -1 -1 -1 -2 -4 -5 -7 -9 -9 -8 -7 -7 -7 -9 -11 -14 -15 -15 -15 -13 -11 -9 -8 -8 -9 -10 -10 -11 -11 -13 -14 -15 -16 -16 -15 -13 -9 -5 -2 2 5 7 9 9 6 2 -1 -3 -4 -4 -3 -4 -4 -3 0 7 15 23 30 36 40 43 46 52 59 61 60 59 60 61 62 66 73 77 75 70 64 56 49 43 41 38 32 25 17 12 8 7 5 3 1 -1 -1 -1 -0 0 -0 -0 -1 -3 -4 -4 -2 -0 0 -0 -3 -6 -8 -11 -14 -17 -19 -20 -20 -20 -19 -18 -18 -18 -17 -15 -12 -7 -3 2 7 11 13 13 10 5 -1 -3 -3 -3 -4 -8 -13 -16 -17 -15 -9 4 18 32 43 51 54 53 51 49 48 48 49 50 50 49 47 45 44 42 41 38 35 30 25 20 17 16 17 18 20 20 20 19 16 12 8 2 -4 -9 -13 -15 -14 -11 -7 -4 -5 -9 -12 -14 -16 -16 -17 -16 -14 -10 -6 -6 -9 -12 -12 -10 -4 5 9 10 9 7 6 5 3 1 -2 -5 -8 -11 -12 -12 -12 -13 -14 -13 -12 -11 -9 -9 -9 -10 -10 -9 -7 -4 -3 -5 -8 -11 -12 -10 -10 -12 -11 -10 -10 -13 -13 -13 -12 -11 -10 -8 -8 -8 -7 -6 -3 -0 2 4 5 5 3 1 -2 -2 1 3 5 6 4 -8 -10 -8 -7 -8 -11 -12 -11 -9 -7 -6 -4 -1 2 3 1 -0 -2 -4 -6 -8 -9 -9 -8 -7 -7 -7 -8 -10 -12 -22 -19 -17 -14 -11 -8 -8 -8 -7 -7 -8 -7 -6 -5 -5 -4 -4 -3 -2 -2 -3 -3 -4 -6 -8 -9 -10 -10 -11 -11 -11 -10 -8 -6 -4 -3 -4 -4 -4 -4 -4 -5 -6 -7 -8 -10 -12 -13 -15 -15 -15 -14 -13 -13 -14 -15 -16 -17 -17 -15 -14 -13 -12 -11 -9 -7 -5 -5 -4 -5 -6 -8 -10 -14 -16 -17 -17 -17 -17 -16 -14 -12 -10 -7 -4 -2 0 2 2 2 1 -0 -1 -2 -4 -5 -7 -8 -9 -10 -10 -11 -12 -12 -12 -11 -9 -8 -6 -5 -4 -3 -2 -1 -0 0 -1 -3 -5 -7 -7 -7 -7 -6 -6 -7 -9 -12 -14 -16 -15 -13 -11 -8 -7 -6 -7 -7 -8 -7 -8 -9 -10 -12 -13 -14 -15 -14 -13 -11 -8 -3 0 3 5 4 3 2 0 -2 -5 -5 -6 -5 -5 -5 -2 4 12 21 30 37 41 44 47 53 58 59 58 59 61 64 68 75 78 76 73 68 61 53 46 43 41 36 29 22 15 11 8 6 4 2 -0 -1 -1 -1 -0 -0 -1 -2 -4 -5 -5 -3 -0 2 2 1 -2 -5 -8 -11 -14 -17 -19 -20 -20 -20 -19 -19 -20 -20 -21 -20 -18 -15 -11 -7 -2 2 6 7 6 3 1 0 -0 -1 -4 -7 -11 -15 -17 -17 -15 -10 -1 11 25 35 40 42 40 37 36 37 40 43 46 47 47 46 45 44 42 39 35 30 25 22 20 20 21 22 22 22 22 20 17 13 8 2 -4 -10 -14 -15 -14 -10 -6 -3 -5 -9 -12 -15 -16 -17 -17 -16 -13 -8 -6 -7 -10 -12 -13 -10 -3 4 9 9 7 6 5 5 4 2 -1 -5 -8 -11 -12 -12 -12 -13 -13 -13 -11 -9 -8 -8 -9 -10 -11 -10 -7 -4 -5 -8 -13 -15 -13 -13 -15 -15 -14 -14 -15 -15 -16 -17 -17 -15 -11 -11 -11 -9 -8 -7 -5 -2 1 2 3 3 1 -3 -4 -2 0 2 2 1 -6 -10 -11 -10 -8 -9 -11 -12 -10 -7 -6 -6 -5 -2 1 2 1 -1 -2 -4 -7 -9 -10 -9 -8 -7 -7 -8 -9 -10 -21 -21 -22 -22 -21 -16 -12 -10 -9 -9 -8 -7 -6 -6 -5 -5 -4 -2 0 2 2 3 2 0 -2 -4 -5 -6 -8 -9 -10 -11 -10 -8 -6 -4 -2 -1 0 1 2 2 1 1 -0 -2 -3 -4 -7 -9 -11 -11 -12 -12 -12 -13 -14 -16 -16 -15 -14 -13 -13 -12 -11 -9 -7 -4 -2 -0 0 -1 -3 -5 -9 -11 -13 -14 -16 -17 -18 -17 -16 -14 -12 -9 -6 -3 -1 1 2 2 2 1 0 -1 -2 -2 -4 -5 -6 -7 -9 -10 -11 -11 -11 -10 -10 -9 -9 -8 -7 -6 -4 -1 0 1 1 -1 -2 -4 -5 -5 -5 -5 -6 -8 -11 -14 -16 -16 -13 -10 -9 -6 -4 -4 -4 -4 -4 -5 -6 -7 -8 -9 -11 -12 -13 -13 -13 -11 -8 -5 -2 -1 -0 0 0 -1 -5 -7 -8 -7 -5 -5 -6 -4 1 8 18 29 37 42 46 51 55 56 57 60 63 68 71 72 71 68 65 64 63 60 52 46 44 39 33 26 18 12 9 6 4 2 0 -1 -1 -1 -0 0 -0 -2 -4 -7 -7 -4 -1 3 5 4 2 -1 -4 -7 -10 -13 -16 -19 -20 -20 -20 -19 -19 -20 -21 -22 -22 -21 -19 -17 -13 -9 -5 -1 2 3 3 3 2 1 -1 -3 -6 -10 -13 -16 -17 -17 -16 -15 -10 -0 10 17 19 18 16 17 20 24 31 37 41 43 44 44 43 41 38 35 31 27 25 24 24 24 25 25 24 23 21 17 13 8 1 -5 -10 -14 -15 -14 -9 -4 -3 -5 -9 -12 -15 -16 -17 -17 -16 -12 -8 -6 -8 -10 -13 -12 -9 -3 4 8 7 5 4 4 4 4 3 -0 -4 -9 -11 -12 -12 -12 -13 -13 -11 -10 -8 -8 -9 -11 -12 -13 -12 -9 -8 -10 -14 -18 -17 -17 -18 -18 -17 -16 -16 -16 -17 -18 -20 -19 -16 -15 -14 -13 -11 -10 -8 -6 -3 -0 1 2 1 -2 -5 -5 -4 -3 -3 -3 -6 -9 -10 -10 -11 -10 -8 -8 -8 -6 -5 -5 -5 -5 -3 1 1 1 -2 -3 -5 -8 -9 -10 -9 -8 -8 -8 -8 -9 -18 -19 -21 -23 -23 -20 -16 -15 -14 -13 -11 -10 -9 -8 -8 -8 -8 -6 -4 -1 0 3 4 4 3 2 1 -1 -3 -5 -7 -10 -11 -11 -10 -8 -6 -4 -2 -0 2 4 6 7 7 6 6 6 4 1 -1 -4 -6 -6 -6 -7 -8 -8 -9 -9 -9 -10 -10 -10 -10 -10 -8 -7 -4 -2 -0 1 1 1 -1 -3 -5 -6 -8 -11 -14 -15 -16 -16 -16 -15 -13 -11 -8 -6 -4 -2 -1 -1 -1 1 2 2 0 -1 -3 -4 -4 -5 -6 -7 -8 -8 -9 -10 -11 -11 -11 -11 -10 -8 -6 -3 -1 1 1 1 -0 -1 -3 -3 -4 -5 -7 -11 -14 -16 -16 -15 -13 -9 -5 -3 -2 -2 -2 -2 -3 -4 -4 -5 -6 -6 -8 -9 -12 -12 -11 -10 -8 -7 -5 -4 -3 -3 -6 -9 -10 -9 -7 -6 -7 -8 -7 -4 2 12 22 32 39 46 52 55 59 63 67 70 71 70 66 63 62 63 65 65 59 51 46 41 37 32 22 14 9 5 3 1 -1 -2 -2 -1 1 1 1 -1 -4 -7 -8 -5 -1 3 6 6 5 2 -0 -3 -6 -10 -13 -16 -18 -20 -20 -20 -19 -19 -19 -21 -22 -23 -22 -21 -19 -16 -13 -10 -5 -2 1 3 4 3 1 -0 -2 -5 -8 -11 -14 -16 -18 -18 -18 -18 -15 -11 -4 0 2 2 2 3 7 15 23 30 35 38 39 39 37 36 33 31 30 30 29 28 27 27 27 26 24 21 17 13 7 1 -5 -11 -15 -16 -13 -8 -3 -2 -4 -8 -13 -15 -17 -17 -18 -16 -12 -8 -6 -8 -11 -13 -12 -9 -4 3 6 5 4 2 3 4 5 4 1 -4 -9 -11 -12 -12 -12 -12 -12 -10 -9 -8 -10 -12 -15 -18 -18 -16 -13 -13 -15 -18 -20 -21 -21 -20 -19 -18 -17 -16 -16 -18 -20 -21 -20 -18 -17 -16 -15 -12 -10 -9 -7 -3 -1 1 0 -2 -6 -7 -7 -7 -8 -8 -9 -9 -9 -8 -13 -12 -10 -7 -5 -5 -4 -4 -4 -4 -5 -3 -0 1 -1 -3 -4 -6 -9 -10 -10 -8 -8 -8 -8 -9 -15 -16 -17 -18 -19 -19 -18 -18 -18 -17 -16 -15 -13 -12 -12 -12 -12 -12 -10 -9 -7 -5 -1 1 1 2 2 1 -0 -2 -3 -5 -7 -8 -9 -10 -10 -10 -9 -8 -6 -4 -1 1 2 3 4 5 6 5 3 1 -1 -0 -0 -0 -0 -1 -1 -2 -3 -4 -4 -5 -5 -6 -6 -7 -7 -6 -4 -2 -1 1 1 1 1 1 0 -2 -5 -8 -9 -11 -13 -14 -15 -15 -14 -12 -10 -9 -7 -7 -5 -2 1 4 3 2 1 0 -1 -2 -1 -1 -2 -4 -5 -7 -9 -10 -11 -11 -11 -11 -10 -9 -7 -4 -2 0 2 3 3 3 2 0 -2 -5 -8 -11 -13 -15 -16 -13 -9 -5 -2 0 1 2 1 -1 -2 -3 -3 -4 -4 -5 -6 -7 -8 -10 -10 -10 -10 -9 -7 -7 -8 -10 -11 -11 -10 -8 -8 -8 -9 -10 -8 -3 3 12 21 28 36 42 48 53 59 63 64 64 64 62 63 64 66 65 62 54 46 41 38 36 30 19 10 4 1 -1 -3 -4 -4 -1 2 3 2 -0 -3 -6 -7 -5 -1 4 7 8 7 5 3 -0 -3 -6 -9 -12 -15 -18 -20 -21 -21 -20 -19 -19 -20 -21 -22 -22 -22 -20 -18 -15 -13 -9 -4 -0 2 4 3 1 -0 -2 -4 -7 -10 -13 -15 -17 -19 -20 -20 -18 -16 -9 -3 0 -1 -4 -7 -6 -1 7 16 23 26 28 28 27 27 27 29 32 33 32 31 29 29 28 26 24 21 17 13 7 1 -6 -12 -15 -16 -12 -6 -2 -1 -4 -8 -13 -15 -17 -18 -18 -15 -11 -7 -6 -9 -11 -13 -12 -10 -4 2 4 4 2 0 2 4 6 5 2 -3 -8 -11 -13 -12 -12 -12 -11 -10 -9 -11 -15 -18 -21 -22 -19 -14 -12 -14 -16 -21 -24 -24 -23 -21 -20 -18 -17 -17 -19 -21 -23 -22 -21 -20 -18 -18 -15 -12 -11 -10 -6 -3 -1 -0 -2 -7 -9 -10 -10 -12 -13 -12 -11 -10 -7 -12 -14 -12 -8 -4 -4 -3 -3 -3 -3 -3 -4 -3 -1 -0 -2 -4 -5 -7 -10 -10 -9 -8 -8 -8 -9 -15 -14 -13 -14 -15 -16 -17 -18 -18 -18 -19 -19 -16 -15 -15 -16 -16 -15 -14 -14 -13 -13 -12 -11 -9 -8 -7 -6 -5 -5 -5 -5 -5 -5 -5 -6 -7 -8 -9 -10 -10 -10 -9 -8 -6 -5 -5 -3 -2 -2 -2 -2 -3 -3 -2 -2 -2 -2 -1 -1 -1 -2 -2 -2 -1 -1 -2 -4 -6 -7 -7 -6 -5 -4 -2 -1 1 3 4 4 2 1 -1 -3 -4 -6 -8 -10 -11 -12 -12 -12 -12 -13 -11 -9 -5 -1 0 2 2 2 1 1 2 2 2 2 -0 -3 -5 -7 -8 -8 -8 -9 -10 -10 -10 -10 -8 -6 -3 1 4 6 6 5 5 3 0 -3 -6 -9 -13 -14 -13 -10 -7 -3 -0 2 3 3 2 1 -1 -3 -4 -5 -5 -5 -5 -6 -9 -10 -12 -12 -11 -11 -9 -9 -9 -11 -13 -12 -10 -8 -7 -8 -10 -10 -9 -6 -1 5 11 17 23 28 35 42 46 50 55 57 58 61 62 62 60 53 45 38 35 33 30 22 15 7 0 -4 -6 -7 -6 -1 4 5 3 1 -2 -5 -6 -4 -1 4 8 9 9 7 5 3 0 -2 -5 -8 -11 -14 -17 -19 -21 -21 -21 -20 -20 -20 -21 -22 -22 -21 -20 -19 -17 -15 -12 -8 -3 1 2 2 1 -0 -2 -4 -7 -10 -12 -15 -17 -19 -20 -20 -20 -17 -11 -4 1 1 -5 -10 -13 -12 -6 3 9 12 12 11 11 13 18 24 31 35 34 33 31 29 28 26 24 21 17 13 7 0 -6 -12 -16 -15 -10 -5 -0 0 -4 -8 -13 -16 -18 -18 -17 -14 -10 -6 -7 -9 -12 -13 -13 -10 -5 0 3 2 -1 -1 0 4 7 7 3 -2 -8 -11 -12 -12 -11 -11 -10 -11 -13 -15 -18 -22 -24 -21 -18 -15 -15 -16 -22 -27 -28 -25 -22 -21 -20 -19 -19 -20 -21 -22 -23 -23 -23 -20 -19 -17 -14 -12 -11 -9 -6 -4 -2 -3 -7 -11 -12 -13 -15 -16 -15 -14 -12 -10 -11 -12 -12 -9 -5 -3 -3 -2 -3 -3 -2 -3 -4 -4 -1 -2 -3 -5 -7 -9 -9 -9 -8 -8 -8 -9 -18 -14 -12 -12 -12 -13 -15 -16 -16 -16 -16 -16 -15 -14 -14 -14 -15 -16 -17 -17 -17 -15 -16 -17 -16 -16 -16 -14 -13 -12 -11 -9 -8 -7 -6 -6 -6 -6 -7 -7 -8 -9 -10 -10 -10 -10 -10 -9 -9 -9 -9 -9 -9 -10 -10 -9 -9 -8 -8 -8 -8 -8 -7 -6 -4 -2 -2 -2 -3 -5 -6 -7 -7 -6 -6 -5 -3 -2 1 3 4 5 5 4 3 3 1 -1 -3 -6 -8 -10 -11 -13 -13 -13 -11 -9 -7 -3 -2 -0 1 2 3 4 5 5 4 2 -0 -2 -3 -3 -3 -4 -6 -8 -10 -11 -12 -12 -10 -6 -2 2 4 7 9 10 8 5 2 -1 -4 -7 -9 -10 -10 -8 -4 -1 1 3 4 4 3 1 -1 -3 -5 -5 -6 -7 -7 -7 -8 -11 -13 -14 -13 -11 -12 -14 -14 -13 -11 -10 -9 -9 -9 -10 -10 -11 -12 -11 -9 -4 -0 4 9 15 21 29 38 43 44 49 52 53 53 49 41 34 29 28 27 22 17 10 3 -4 -9 -10 -8 -2 4 6 5 3 -0 -3 -5 -4 0 5 9 11 10 9 7 5 3 1 -2 -4 -7 -10 -13 -16 -19 -21 -21 -21 -21 -20 -20 -21 -21 -22 -21 -20 -19 -17 -16 -14 -12 -7 -2 1 2 1 -1 -2 -5 -7 -9 -12 -14 -17 -19 -20 -21 -20 -17 -12 -5 1 1 -4 -10 -14 -16 -11 -5 -1 1 -1 -4 -4 0 8 19 29 34 35 34 32 30 28 26 24 21 17 12 6 -0 -7 -13 -15 -14 -9 -3 1 0 -4 -8 -13 -16 -17 -18 -17 -13 -8 -6 -8 -10 -12 -13 -13 -10 -6 -0 2 -0 -3 -3 -2 3 7 7 4 -1 -7 -10 -11 -11 -10 -10 -11 -12 -13 -15 -19 -22 -22 -21 -19 -18 -18 -22 -26 -27 -25 -23 -23 -22 -20 -20 -20 -20 -21 -22 -23 -24 -21 -20 -19 -17 -15 -13 -11 -9 -7 -6 -5 -9 -12 -13 -14 -17 -18 -17 -16 -15 -14 -13 -12 -11 -11 -5 -3 -2 -2 -2 -3 -2 -2 -3 -5 -3 -2 -3 -6 -9 -8 -9 -9 -8 -7 -8 -9 -23 -20 -17 -15 -15 -14 -15 -15 -15 -16 -18 -20 -19 -17 -15 -14 -14 -14 -14 -14 -14 -14 -15 -16 -17 -17 -18 -17 -16 -16 -15 -14 -14 -13 -12 -10 -9 -8 -7 -7 -6 -6 -7 -8 -8 -8 -9 -9 -10 -10 -11 -11 -12 -13 -14 -15 -15 -15 -14 -15 -15 -16 -16 -15 -13 -10 -8 -5 -4 -4 -5 -5 -5 -5 -5 -6 -6 -6 -5 -3 0 3 4 6 7 7 7 6 4 2 -0 -2 -4 -7 -9 -11 -12 -12 -13 -11 -8 -5 -3 -1 1 3 4 5 6 5 4 2 2 2 2 1 -1 -3 -5 -8 -11 -13 -14 -13 -10 -7 -3 1 5 9 11 11 9 7 5 2 -1 -4 -7 -8 -7 -5 -3 -1 1 4 5 5 4 2 -1 -4 -6 -7 -8 -8 -8 -9 -11 -12 -13 -11 -11 -12 -11 -12 -12 -12 -12 -11 -10 -10 -11 -12 -12 -12 -11 -8 -5 -3 -1 1 5 10 18 24 25 31 36 39 43 41 36 30 26 24 23 20 17 12 5 -3 -9 -12 -10 -4 3 6 7 5 2 -1 -3 -2 2 7 11 12 12 10 8 7 5 3 1 -1 -3 -6 -9 -12 -15 -18 -20 -21 -22 -21 -21 -21 -21 -21 -22 -21 -20 -19 -18 -17 -17 -15 -11 -5 -1 1 1 -1 -3 -5 -7 -9 -12 -14 -17 -19 -20 -21 -20 -18 -13 -5 0 0 -4 -9 -14 -15 -12 -7 -2 -2 -6 -9 -11 -9 -1 13 25 32 35 34 33 31 29 27 24 20 16 12 6 -0 -7 -12 -15 -13 -8 -2 1 0 -3 -8 -12 -15 -17 -17 -16 -12 -8 -7 -8 -11 -13 -13 -13 -11 -7 -1 0 -2 -5 -6 -4 2 6 7 5 0 -5 -9 -10 -10 -10 -11 -13 -14 -13 -14 -17 -20 -22 -24 -24 -22 -22 -23 -23 -22 -22 -24 -23 -22 -21 -20 -20 -20 -21 -22 -22 -21 -20 -20 -20 -18 -17 -14 -12 -12 -12 -9 -11 -13 -14 -15 -17 -19 -19 -18 -17 -16 -15 -14 -13 -13 -7 -4 -2 -2 -2 -3 -2 -2 -2 -3 -4 -3 -3 -6 -11 -9 -9 -9 -8 -8 -9 -11 -24 -23 -22 -21 -20 -19 -18 -18 -19 -19 -20 -20 -20 -19 -17 -15 -16 -16 -14 -12 -13 -14 -13 -13 -14 -16 -18 -16 -15 -14 -15 -15 -16 -16 -15 -14 -13 -12 -11 -10 -9 -8 -8 -8 -8 -7 -7 -7 -7 -7 -8 -8 -9 -10 -11 -13 -13 -14 -14 -15 -17 -18 -20 -21 -20 -19 -17 -14 -11 -9 -8 -7 -6 -5 -3 -4 -5 -6 -7 -8 -6 -4 -1 1 4 6 7 7 7 6 5 4 2 -1 -4 -6 -7 -8 -11 -14 -13 -11 -9 -7 -4 -2 1 2 3 4 4 4 5 5 5 4 4 2 1 -2 -5 -8 -12 -14 -15 -14 -12 -9 -6 -0 5 8 10 10 10 9 8 5 1 -2 -4 -6 -6 -5 -4 -1 2 4 6 7 5 1 -2 -5 -8 -9 -9 -9 -10 -10 -11 -11 -11 -11 -11 -12 -12 -12 -12 -12 -12 -12 -13 -14 -16 -17 -17 -14 -9 -2 2 3 4 5 7 11 11 15 20 25 32 34 33 30 27 24 22 20 18 14 7 -0 -8 -12 -12 -7 0 5 8 7 5 2 0 1 5 11 14 14 13 11 9 8 6 5 3 2 -0 -2 -5 -7 -11 -14 -17 -20 -22 -22 -22 -21 -21 -21 -21 -21 -21 -20 -20 -19 -18 -18 -17 -14 -9 -3 1 1 -1 -3 -5 -7 -9 -12 -14 -17 -19 -20 -21 -21 -19 -13 -5 -0 0 -4 -10 -14 -15 -13 -7 -1 -0 -4 -9 -13 -14 -7 6 20 30 34 34 33 32 30 28 24 21 17 12 6 -0 -6 -11 -14 -13 -7 -2 1 1 -3 -8 -12 -15 -17 -17 -15 -11 -8 -7 -9 -12 -13 -13 -13 -12 -7 -1 -1 -3 -7 -9 -6 -0 5 8 6 1 -4 -8 -9 -10 -10 -12 -14 -14 -9 -10 -15 -22 -27 -28 -25 -22 -20 -19 -19 -21 -23 -24 -23 -22 -20 -20 -20 -20 -21 -21 -21 -20 -20 -20 -20 -20 -18 -17 -17 -18 -16 -15 -15 -14 -15 -16 -18 -19 -19 -19 -18 -17 -16 -15 -14 -10 -6 -2 -2 -2 -2 -2 -2 -1 -2 -3 -4 -3 -4 -7 -8 -9 -9 -8 -9 -12 -15 -22 -23 -23 -22 -22 -21 -20 -20 -21 -22 -24 -24 -24 -23 -21 -18 -19 -20 -17 -14 -13 -13 -12 -11 -11 -12 -14 -12 -10 -9 -10 -11 -12 -13 -14 -14 -14 -14 -14 -14 -14 -14 -13 -13 -13 -12 -12 -11 -9 -8 -7 -6 -4 -5 -5 -6 -7 -7 -8 -9 -11 -13 -15 -17 -18 -19 -19 -19 -17 -17 -16 -14 -13 -11 -8 -6 -4 -3 -5 -7 -9 -9 -8 -6 -3 -0 3 4 5 5 5 5 4 2 -1 -2 -1 1 0 -6 -11 -13 -13 -12 -11 -9 -6 -3 -1 -0 1 2 3 5 6 6 6 6 5 4 2 -1 -4 -9 -12 -14 -15 -15 -15 -12 -8 -3 2 5 7 9 11 11 10 7 4 -0 -4 -5 -7 -6 -4 -1 3 7 8 7 4 -0 -4 -7 -9 -9 -10 -8 -9 -9 -10 -11 -11 -12 -12 -13 -13 -13 -13 -13 -13 -14 -15 -15 -15 -13 -11 -7 -1 4 8 10 11 11 11 13 15 20 27 32 33 33 32 29 27 25 24 19 12 5 -3 -9 -12 -10 -3 4 8 10 9 7 5 6 10 16 17 16 14 12 11 9 8 6 5 4 2 1 -1 -3 -6 -9 -13 -16 -20 -22 -22 -22 -22 -21 -21 -21 -21 -21 -20 -20 -19 -19 -19 -19 -17 -12 -4 0 2 0 -2 -5 -8 -10 -12 -14 -17 -19 -21 -22 -22 -19 -13 -5 0 1 -4 -10 -14 -16 -14 -8 -2 0 -2 -8 -14 -16 -12 -2 13 26 31 32 33 32 31 28 25 21 17 12 7 1 -5 -11 -14 -12 -8 -2 2 2 -2 -7 -11 -14 -16 -16 -14 -11 -8 -7 -9 -12 -13 -14 -14 -12 -6 -1 -1 -4 -9 -11 -8 -3 4 7 5 2 -3 -7 -9 -9 -11 -13 -14 -9 -9 -15 -22 -28 -29 -26 -23 -20 -18 -18 -20 -23 -24 -24 -23 -21 -20 -20 -20 -21 -21 -21 -21 -20 -20 -20 -21 -22 -21 -20 -20 -20 -19 -17 -16 -16 -15 -17 -19 -21 -20 -18 -17 -17 -16 -16 -13 -8 -3 -2 -2 -2 -2 -2 -2 -2 -3 -4 -4 -5 -8 -11 -12 -11 -9 -11 -15 -19 -19 -20 -20 -20 -20 -20 -19 -19 -20 -21 -23 -25 -28 -27 -25 -22 -21 -22 -20 -17 -16 -16 -15 -13 -11 -10 -11 -10 -8 -7 -6 -7 -8 -10 -11 -11 -12 -12 -12 -13 -15 -16 -17 -17 -18 -18 -18 -16 -14 -13 -10 -8 -6 -5 -5 -5 -4 -4 -5 -5 -6 -6 -7 -8 -9 -10 -12 -14 -15 -16 -17 -18 -18 -18 -17 -14 -11 -8 -7 -8 -9 -10 -10 -9 -7 -5 -3 -1 0 2 2 3 4 3 1 1 3 5 5 3 1 -2 -5 -7 -9 -11 -12 -10 -7 -5 -4 -3 -2 -0 1 3 4 5 6 6 6 5 3 -1 -5 -7 -10 -13 -16 -18 -17 -14 -10 -6 -4 -1 3 7 10 11 11 8 5 1 -3 -5 -6 -6 -3 2 7 8 8 5 1 -3 -5 -7 -8 -7 -8 -8 -8 -9 -10 -11 -12 -12 -12 -13 -13 -13 -14 -14 -14 -15 -16 -16 -15 -12 -7 -0 7 12 15 16 16 18 20 24 30 35 37 38 39 41 39 37 34 28 20 13 5 -3 -8 -10 -5 2 8 12 13 11 9 10 14 20 21 19 16 14 12 11 9 7 6 5 3 2 1 -0 -2 -5 -8 -12 -15 -19 -21 -22 -22 -22 -21 -21 -21 -20 -20 -20 -20 -19 -20 -20 -21 -19 -13 -5 1 3 1 -2 -5 -8 -10 -12 -15 -17 -19 -21 -22 -22 -19 -13 -5 1 -0 -5 -10 -14 -16 -15 -9 -3 1 -0 -7 -13 -17 -17 -11 5 18 25 29 31 31 31 28 25 21 17 12 7 1 -4 -10 -13 -12 -8 -2 2 1 -2 -6 -11 -14 -15 -15 -13 -10 -7 -8 -10 -12 -14 -14 -14 -11 -5 -0 -0 -6 -10 -12 -10 -5 2 5 5 2 -3 -7 -9 -11 -12 -13 -14 -14 -16 -21 -25 -27 -28 -26 -23 -19 -18 -19 -21 -24 -24 -24 -23 -22 -20 -20 -21 -22 -22 -22 -21 -20 -19 -21 -23 -23 -20 -20 -21 -22 -20 -18 -18 -17 -17 -20 -24 -22 -19 -17 -17 -16 -16 -14 -9 -4 -2 -2 -2 -2 -2 -2 -2 -3 -5 -6 -8 -13 -16 -17 -15 -14 -15 -16 -18 -16 -16 -17 -17 -17 -17 -17 -17 -16 -17 -20 -25 -28 -27 -26 -24 -23 -22 -21 -20 -21 -22 -22 -18 -16 -16 -18 -20 -17 -12 -7 -6 -8 -9 -10 -10 -9 -9 -9 -10 -12 -14 -14 -15 -16 -18 -18 -18 -18 -17 -16 -14 -13 -12 -11 -10 -10 -9 -9 -9 -9 -9 -8 -7 -6 -5 -5 -7 -8 -10 -12 -13 -15 -17 -18 -18 -17 -15 -13 -12 -12 -12 -12 -11 -10 -9 -8 -7 -6 -5 -3 -1 -1 -3 -2 1 4 7 8 9 8 5 3 -0 -4 -7 -10 -11 -10 -8 -7 -6 -5 -5 -4 -3 -1 0 1 3 4 5 5 4 2 1 -2 -5 -9 -13 -15 -16 -15 -11 -10 -8 -6 -4 0 5 10 12 12 9 6 2 -3 -6 -6 -5 -1 3 6 8 6 4 1 -2 -5 -6 -7 -7 -8 -8 -9 -10 -11 -11 -12 -13 -13 -13 -14 -14 -15 -15 -16 -17 -17 -16 -13 -8 -1 7 15 19 21 21 22 25 32 39 43 45 49 55 53 50 46 40 32 25 18 9 0 -5 -4 1 7 11 12 9 6 7 11 18 21 20 19 17 15 12 11 9 7 6 4 3 2 1 0 -1 -4 -6 -10 -14 -18 -20 -22 -22 -22 -21 -21 -20 -20 -20 -19 -19 -19 -20 -21 -22 -20 -13 -5 2 4 1 -2 -5 -8 -11 -13 -15 -17 -19 -20 -21 -21 -19 -13 -5 -1 -2 -5 -10 -15 -16 -15 -10 -4 1 -0 -6 -12 -18 -19 -15 -3 9 19 24 26 29 29 28 25 22 17 13 8 2 -4 -9 -12 -12 -9 -3 1 1 -2 -6 -10 -13 -15 -15 -13 -10 -8 -8 -10 -12 -14 -15 -14 -10 -4 1 -2 -7 -11 -13 -12 -7 -1 3 4 1 -4 -8 -12 -14 -15 -16 -15 -14 -14 -19 -25 -29 -29 -26 -21 -19 -18 -20 -22 -24 -25 -25 -24 -23 -22 -23 -23 -23 -24 -25 -23 -20 -21 -23 -24 -20 -20 -22 -24 -23 -22 -21 -19 -19 -22 -26 -23 -20 -17 -16 -15 -16 -14 -10 -4 -3 -3 -3 -3 -2 -2 -3 -6 -9 -10 -12 -16 -18 -20 -20 -20 -18 -16 -13 -13 -14 -14 -14 -14 -14 -15 -15 -13 -14 -18 -23 -24 -22 -22 -22 -22 -23 -24 -23 -22 -21 -22 -20 -20 -22 -25 -26 -24 -20 -15 -10 -11 -12 -12 -11 -11 -10 -10 -10 -10 -10 -10 -11 -13 -14 -15 -15 -16 -16 -16 -16 -15 -14 -14 -14 -14 -14 -13 -14 -14 -14 -13 -11 -9 -7 -6 -6 -6 -7 -8 -9 -10 -12 -14 -15 -16 -17 -16 -15 -15 -15 -16 -15 -15 -13 -12 -11 -11 -11 -10 -9 -7 -7 -5 -2 2 6 9 11 11 11 10 8 5 1 -4 -9 -12 -10 -7 -6 -6 -7 -7 -6 -5 -4 -4 -2 -1 1 2 3 4 4 4 2 -0 -4 -7 -9 -10 -8 -9 -8 -9 -9 -8 -7 -2 3 7 8 10 9 4 -2 -4 -8 -7 -5 -1 3 6 7 7 5 1 -2 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -13 -14 -14 -15 -15 -16 -16 -17 -17 -18 -17 -14 -9 -2 6 15 20 24 28 30 34 41 49 56 62 64 60 57 54 51 48 42 35 26 16 6 1 2 5 8 7 3 -0 -1 2 8 13 16 18 18 16 14 12 10 8 6 5 4 3 2 2 1 -1 -3 -5 -8 -12 -16 -19 -21 -22 -22 -21 -20 -20 -19 -19 -19 -19 -19 -20 -21 -22 -20 -14 -5 2 3 1 -2 -5 -8 -10 -12 -14 -16 -18 -19 -21 -21 -19 -13 -6 -2 -3 -6 -11 -14 -16 -15 -11 -4 -0 -1 -6 -12 -17 -18 -15 -7 2 11 16 20 24 27 27 25 22 18 13 8 3 -3 -9 -12 -13 -9 -3 1 1 -2 -6 -10 -13 -15 -15 -14 -11 -8 -8 -9 -12 -14 -14 -13 -9 -2 -0 -3 -8 -12 -13 -13 -10 -5 0 2 -2 -8 -13 -16 -18 -19 -18 -15 -11 -11 -16 -22 -26 -26 -22 -19 -18 -18 -20 -23 -25 -26 -26 -25 -23 -25 -26 -26 -28 -31 -28 -24 -22 -23 -25 -21 -21 -23 -26 -27 -26 -23 -21 -22 -26 -28 -25 -21 -18 -16 -13 -14 -14 -10 -5 -5 -6 -6 -4 -4 -4 -4 -8 -13 -13 -14 -16 -18 -20 -22 -23 -21 -16 -11 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -14 -15 -17 -18 -18 -17 -18 -21 -25 -25 -22 -19 -19 -20 -20 -20 -21 -23 -24 -21 -17 -14 -14 -14 -14 -15 -15 -14 -14 -13 -13 -13 -14 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -13 -13 -13 -13 -13 -14 -15 -16 -17 -17 -15 -14 -12 -11 -10 -9 -9 -9 -10 -10 -10 -11 -12 -14 -15 -15 -16 -16 -17 -17 -18 -18 -17 -17 -16 -15 -15 -15 -14 -13 -12 -11 -8 -5 -1 4 7 9 11 12 12 11 9 4 -1 -6 -5 -4 -3 -4 -6 -6 -6 -6 -6 -6 -6 -5 -4 -3 -2 -0 1 3 4 4 2 0 -2 -3 -3 -3 -3 -5 -7 -9 -11 -10 -8 -5 -3 1 4 4 2 1 -4 -7 -8 -8 -6 -4 1 5 7 6 3 1 -2 -4 -5 -7 -8 -9 -9 -10 -11 -13 -14 -15 -15 -16 -17 -17 -17 -18 -18 -18 -18 -16 -13 -7 3 12 20 27 31 35 44 55 64 69 67 62 57 55 54 54 52 47 41 33 22 13 7 5 5 3 4 2 -2 -6 -5 0 6 11 15 16 15 13 11 9 7 6 5 4 4 3 2 1 -0 -2 -4 -7 -10 -14 -17 -20 -21 -21 -21 -20 -19 -18 -18 -18 -18 -19 -20 -22 -23 -21 -16 -6 1 3 1 -2 -5 -7 -10 -12 -14 -15 -17 -19 -20 -21 -19 -13 -7 -3 -3 -7 -11 -14 -15 -15 -11 -6 -2 -2 -6 -11 -15 -16 -13 -8 -2 4 8 13 18 24 26 25 22 18 14 9 3 -3 -9 -13 -13 -9 -3 1 1 -2 -6 -10 -13 -15 -16 -15 -12 -9 -7 -9 -12 -14 -14 -13 -7 -2 -1 -4 -9 -13 -14 -14 -13 -9 -3 -3 -7 -13 -16 -19 -21 -21 -19 -14 -10 -11 -16 -20 -23 -22 -21 -18 -17 -17 -20 -23 -27 -28 -25 -25 -28 -29 -29 -31 -35 -33 -29 -25 -24 -26 -23 -23 -25 -28 -31 -30 -26 -23 -25 -29 -29 -26 -20 -15 -12 -8 -10 -13 -12 -8 -8 -10 -10 -8 -8 -8 -8 -10 -13 -13 -14 -15 -18 -20 -21 -21 -19 -15 -9 -15 -15 -15 -15 -15 -16 -17 -18 -19 -19 -17 -15 -16 -16 -18 -22 -27 -30 -27 -23 -20 -19 -20 -20 -20 -20 -20 -22 -23 -21 -18 -16 -15 -14 -14 -15 -16 -16 -16 -17 -18 -18 -18 -17 -16 -15 -14 -13 -12 -12 -12 -13 -12 -11 -10 -10 -10 -10 -12 -13 -14 -15 -16 -16 -15 -15 -15 -14 -13 -13 -13 -13 -13 -13 -12 -12 -13 -13 -13 -14 -15 -16 -17 -18 -18 -19 -19 -19 -18 -17 -16 -16 -17 -17 -16 -14 -12 -9 -6 -2 2 5 7 9 10 11 10 8 5 3 2 2 0 -2 -3 -3 -4 -5 -5 -6 -6 -7 -7 -7 -5 -4 -2 -1 1 3 3 2 2 2 2 2 1 -1 -4 -7 -10 -12 -12 -12 -10 -7 -6 -4 -1 -1 -2 -5 -8 -10 -11 -7 -3 2 5 5 4 2 0 -2 -5 -7 -8 -8 -9 -10 -11 -13 -15 -16 -17 -17 -18 -18 -18 -19 -19 -20 -21 -21 -19 -14 -5 6 16 26 33 44 55 65 70 66 60 54 52 52 52 51 50 48 45 38 29 20 13 9 11 17 14 5 -3 -9 -10 -8 -2 4 10 13 13 12 10 8 7 6 6 5 4 3 2 1 0 -1 -3 -6 -9 -12 -16 -18 -19 -20 -20 -20 -19 -18 -17 -17 -17 -19 -20 -22 -24 -23 -16 -7 -0 2 1 -2 -4 -7 -9 -11 -13 -15 -16 -18 -19 -20 -18 -13 -7 -3 -4 -7 -11 -14 -15 -15 -11 -7 -4 -4 -7 -11 -13 -14 -12 -8 -3 0 3 6 12 19 23 24 22 18 14 9 4 -3 -9 -12 -12 -8 -3 1 -0 -3 -7 -12 -16 -18 -20 -18 -13 -8 -8 -9 -11 -13 -14 -11 -6 -2 -1 -6 -11 -14 -16 -17 -16 -12 -8 -8 -10 -13 -17 -22 -23 -22 -18 -12 -10 -12 -15 -19 -21 -21 -20 -18 -16 -17 -21 -25 -27 -25 -25 -29 -31 -32 -35 -38 -36 -32 -27 -23 -25 -26 -26 -27 -30 -33 -32 -28 -24 -27 -29 -29 -24 -16 -8 -6 -6 -9 -13 -15 -12 -12 -14 -15 -13 -13 -13 -13 -13 -14 -13 -13 -14 -17 -19 -19 -16 -14 -12 -8 -17 -18 -18 -17 -17 -17 -17 -17 -17 -17 -17 -17 -19 -22 -23 -23 -25 -28 -27 -22 -19 -19 -21 -20 -20 -20 -22 -22 -21 -19 -18 -18 -18 -16 -15 -15 -15 -16 -16 -18 -20 -21 -21 -20 -19 -18 -17 -16 -15 -15 -15 -14 -13 -11 -10 -9 -8 -8 -9 -11 -11 -11 -11 -12 -13 -13 -14 -15 -15 -15 -15 -15 -15 -16 -15 -15 -14 -14 -14 -14 -14 -15 -16 -16 -17 -18 -19 -19 -19 -18 -17 -17 -18 -19 -19 -17 -15 -14 -13 -10 -7 -4 -2 1 3 5 7 8 9 9 8 7 5 3 1 0 -1 -1 -2 -3 -5 -6 -7 -8 -8 -8 -7 -6 -4 -2 1 2 3 4 4 5 5 4 3 -0 -4 -8 -11 -14 -16 -16 -15 -13 -10 -5 -3 -3 -6 -8 -12 -12 -10 -7 -3 1 2 4 4 2 -0 -3 -6 -8 -9 -9 -10 -11 -13 -15 -16 -17 -18 -18 -18 -18 -20 -21 -23 -25 -27 -27 -23 -15 -3 10 22 35 47 56 63 60 54 50 49 49 48 48 48 48 46 41 32 24 15 6 8 13 14 11 7 -0 -8 -13 -14 -11 -3 4 9 11 10 8 7 6 6 6 6 4 3 2 1 0 -1 -3 -5 -8 -11 -15 -17 -19 -20 -20 -19 -18 -17 -16 -16 -17 -18 -20 -23 -25 -24 -17 -8 -1 2 1 -1 -4 -6 -9 -11 -13 -14 -16 -17 -19 -19 -17 -13 -7 -4 -5 -8 -11 -14 -15 -14 -12 -8 -5 -6 -8 -10 -12 -12 -10 -7 -4 -2 -1 1 7 14 20 22 21 17 13 9 4 -2 -8 -12 -12 -8 -3 -1 -2 -6 -12 -17 -20 -21 -21 -19 -13 -9 -8 -9 -11 -13 -13 -10 -6 -2 -4 -10 -15 -19 -21 -22 -21 -18 -14 -11 -11 -15 -20 -24 -24 -21 -16 -12 -10 -11 -15 -19 -21 -21 -20 -16 -15 -17 -20 -23 -24 -25 -28 -30 -33 -38 -39 -37 -32 -27 -23 -23 -26 -27 -26 -29 -32 -32 -28 -25 -27 -27 -27 -22 -13 -8 -6 -7 -11 -16 -17 -16 -16 -16 -16 -16 -17 -17 -16 -15 -15 -14 -13 -14 -16 -18 -14 -9 -8 -9 -8 -18 -17 -16 -16 -15 -13 -13 -14 -14 -14 -14 -15 -18 -21 -21 -20 -20 -21 -20 -18 -17 -17 -18 -18 -19 -21 -24 -23 -19 -18 -18 -19 -18 -16 -16 -16 -16 -16 -16 -17 -18 -20 -21 -21 -20 -20 -19 -18 -18 -18 -18 -18 -17 -14 -12 -11 -10 -9 -9 -9 -9 -9 -9 -9 -10 -10 -11 -12 -13 -14 -15 -15 -15 -16 -16 -16 -15 -15 -15 -15 -16 -16 -16 -17 -17 -18 -19 -19 -18 -17 -16 -16 -16 -18 -18 -17 -16 -15 -16 -15 -13 -10 -9 -8 -6 -4 -2 -0 2 6 9 10 9 6 4 3 3 2 1 0 -1 -3 -5 -7 -7 -8 -8 -9 -8 -7 -5 -3 -1 1 2 4 6 7 7 6 4 0 -4 -9 -13 -16 -19 -20 -19 -14 -9 -7 -5 -6 -10 -11 -12 -12 -10 -6 -3 -0 2 3 3 1 -2 -5 -8 -8 -9 -10 -11 -13 -15 -17 -18 -19 -19 -19 -20 -21 -23 -25 -26 -28 -30 -30 -26 -15 0 14 25 33 39 38 36 34 34 35 36 36 36 35 28 22 14 7 1 -4 -3 0 3 6 8 6 0 -7 -13 -16 -15 -9 -2 5 9 8 7 6 6 6 7 6 4 3 2 0 -0 -1 -3 -5 -8 -11 -14 -17 -19 -20 -20 -19 -18 -17 -16 -16 -16 -18 -21 -23 -26 -24 -18 -8 -0 2 1 -1 -4 -6 -8 -10 -12 -14 -15 -17 -18 -19 -17 -12 -7 -5 -6 -8 -11 -13 -14 -14 -12 -9 -7 -7 -9 -10 -11 -11 -10 -8 -6 -4 -4 -2 3 9 15 19 19 17 14 10 5 -2 -7 -11 -12 -7 -4 -4 -7 -11 -15 -18 -20 -21 -21 -19 -14 -9 -7 -8 -11 -13 -13 -11 -7 -6 -10 -16 -22 -25 -27 -27 -25 -20 -15 -13 -15 -19 -22 -23 -22 -18 -14 -11 -9 -10 -14 -18 -21 -21 -17 -14 -14 -17 -21 -24 -24 -25 -27 -32 -38 -39 -35 -31 -28 -26 -24 -25 -25 -23 -23 -26 -27 -26 -25 -26 -25 -25 -21 -13 -11 -10 -10 -13 -17 -18 -18 -17 -17 -17 -17 -18 -18 -18 -17 -17 -16 -15 -15 -14 -14 -10 -7 -6 -7 -9 -14 -14 -14 -13 -11 -10 -10 -12 -12 -12 -12 -13 -15 -16 -16 -16 -17 -17 -15 -14 -14 -15 -15 -16 -17 -19 -21 -21 -18 -17 -16 -16 -15 -14 -15 -17 -18 -18 -18 -17 -16 -16 -18 -18 -19 -19 -18 -18 -18 -19 -19 -20 -20 -19 -17 -16 -15 -13 -12 -12 -11 -11 -10 -9 -9 -9 -10 -11 -11 -12 -14 -15 -15 -14 -15 -15 -14 -14 -14 -15 -16 -16 -17 -18 -19 -20 -20 -21 -20 -19 -17 -15 -15 -16 -17 -17 -16 -15 -14 -14 -13 -12 -10 -10 -11 -11 -11 -9 -5 -1 2 4 6 6 6 5 5 6 5 4 3 1 -1 -3 -4 -5 -7 -8 -8 -8 -8 -7 -7 -6 -4 -2 1 4 7 8 8 7 4 0 -4 -10 -15 -19 -22 -20 -17 -14 -10 -7 -8 -8 -9 -11 -13 -11 -9 -7 -4 -1 2 3 1 -3 -6 -9 -10 -10 -11 -12 -14 -16 -18 -20 -20 -21 -20 -20 -22 -23 -25 -27 -30 -32 -33 -29 -20 -15 -11 -9 -6 -4 -1 1 3 4 6 7 8 5 -2 -6 -9 -11 -14 -16 -13 -11 -7 -3 0 2 1 -2 -7 -13 -17 -17 -13 -6 2 6 7 6 5 5 6 6 6 4 3 1 -0 -1 -2 -3 -5 -8 -11 -14 -17 -19 -20 -20 -19 -18 -17 -15 -15 -16 -18 -21 -24 -26 -24 -18 -7 -1 1 0 -2 -3 -6 -8 -10 -12 -13 -15 -16 -18 -18 -17 -11 -7 -5 -6 -9 -12 -13 -14 -13 -11 -9 -9 -9 -9 -10 -10 -11 -11 -10 -8 -8 -8 -6 -3 2 9 14 16 16 14 10 5 -1 -8 -13 -12 -10 -8 -7 -8 -11 -15 -18 -20 -21 -21 -18 -13 -9 -6 -9 -12 -14 -14 -13 -10 -12 -16 -21 -25 -29 -30 -29 -26 -21 -18 -18 -18 -19 -20 -20 -18 -16 -13 -10 -8 -10 -14 -19 -22 -19 -14 -12 -13 -18 -22 -23 -24 -25 -29 -36 -37 -34 -31 -31 -30 -27 -25 -25 -24 -21 -21 -22 -24 -25 -25 -24 -24 -22 -16 -16 -15 -15 -16 -18 -19 -18 -18 -17 -17 -18 -18 -19 -19 -18 -18 -17 -17 -15 -11 -8 -8 -7 -6 -7 -8 -8 -9 -10 -9 -8 -7 -8 -11 -11 -11 -11 -12 -13 -12 -12 -13 -14 -15 -14 -13 -13 -14 -14 -16 -16 -16 -15 -14 -15 -14 -14 -14 -14 -13 -13 -14 -14 -15 -16 -16 -15 -13 -14 -16 -17 -17 -16 -16 -17 -18 -18 -19 -18 -18 -17 -17 -17 -16 -15 -14 -14 -14 -13 -12 -11 -11 -12 -12 -13 -13 -13 -13 -12 -12 -12 -12 -11 -11 -12 -13 -14 -14 -14 -15 -17 -19 -20 -22 -23 -22 -19 -17 -14 -14 -15 -17 -17 -16 -15 -15 -15 -15 -13 -11 -10 -10 -11 -11 -11 -9 -7 -5 -3 -1 1 2 4 5 6 5 4 4 3 2 -0 -2 -4 -5 -6 -7 -7 -8 -9 -10 -10 -8 -6 -3 1 5 7 8 8 7 4 -2 -7 -12 -17 -19 -20 -19 -17 -12 -10 -8 -8 -10 -12 -12 -12 -11 -9 -7 -3 0 1 -0 -3 -6 -8 -10 -11 -12 -13 -14 -16 -18 -20 -21 -22 -22 -22 -23 -24 -24 -26 -29 -31 -26 -20 -17 -17 -19 -20 -20 -20 -20 -21 -23 -26 -27 -27 -27 -28 -24 -21 -20 -22 -22 -20 -18 -15 -11 -8 -5 -4 -4 -6 -10 -14 -18 -19 -16 -10 -2 4 6 6 4 4 4 5 5 5 3 1 -1 -2 -2 -3 -5 -8 -12 -15 -18 -19 -20 -20 -20 -18 -16 -15 -15 -15 -18 -21 -24 -25 -24 -16 -7 -2 0 -1 -2 -4 -6 -8 -11 -12 -13 -14 -16 -17 -18 -15 -11 -7 -6 -8 -11 -13 -15 -15 -13 -12 -11 -10 -10 -10 -10 -11 -11 -12 -12 -11 -10 -10 -9 -5 0 6 10 13 13 11 8 3 -3 -11 -15 -15 -11 -6 -4 -6 -10 -14 -18 -19 -19 -18 -15 -11 -7 -7 -9 -13 -16 -17 -14 -12 -13 -17 -21 -26 -30 -31 -29 -26 -23 -20 -19 -18 -19 -19 -18 -17 -15 -12 -9 -8 -10 -15 -21 -21 -16 -12 -11 -14 -19 -22 -23 -24 -28 -33 -35 -34 -32 -34 -33 -29 -26 -24 -25 -21 -18 -19 -22 -25 -25 -23 -23 -23 -20 -20 -19 -19 -18 -18 -19 -19 -19 -18 -18 -18 -19 -20 -20 -20 -19 -19 -18 -15 -6 -5 -7 -8 -6 -7 -8 -6 -7 -6 -5 -4 -4 -6 -10 -12 -11 -11 -12 -13 -12 -12 -12 -12 -12 -14 -14 -14 -14 -16 -19 -19 -16 -12 -11 -11 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -13 -13 -13 -14 -14 -15 -15 -14 -14 -14 -14 -14 -14 -15 -15 -15 -15 -15 -14 -14 -13 -13 -13 -13 -13 -13 -13 -14 -14 -13 -12 -11 -11 -11 -11 -11 -11 -11 -12 -12 -12 -13 -14 -15 -17 -20 -22 -23 -22 -20 -17 -14 -14 -15 -15 -15 -14 -14 -15 -15 -14 -13 -11 -11 -11 -11 -12 -11 -11 -10 -9 -7 -6 -5 -3 -1 1 2 2 3 3 3 2 0 -1 -2 -2 -3 -4 -6 -8 -9 -11 -12 -12 -11 -8 -4 -0 3 6 7 7 6 4 -0 -6 -13 -17 -20 -21 -19 -18 -14 -11 -10 -10 -11 -11 -11 -11 -11 -9 -6 -3 -0 1 -1 -5 -8 -11 -13 -13 -14 -15 -17 -18 -20 -22 -23 -23 -23 -23 -24 -25 -26 -26 -22 -16 -13 -13 -15 -17 -20 -21 -22 -22 -22 -25 -29 -31 -32 -28 -26 -25 -25 -25 -25 -24 -22 -20 -17 -15 -12 -9 -8 -9 -11 -14 -17 -19 -20 -19 -12 -5 2 6 6 3 3 3 4 5 5 3 1 -1 -3 -3 -4 -6 -9 -12 -15 -18 -19 -20 -20 -20 -18 -16 -15 -14 -15 -18 -21 -24 -25 -22 -14 -7 -2 -1 -2 -3 -4 -6 -8 -11 -12 -13 -14 -15 -17 -17 -14 -11 -7 -8 -11 -14 -16 -18 -17 -16 -14 -14 -13 -13 -11 -10 -9 -11 -12 -12 -11 -11 -11 -9 -6 -0 6 10 10 8 5 3 0 -5 -11 -15 -14 -9 -4 -2 -4 -8 -12 -14 -16 -16 -15 -13 -9 -7 -8 -11 -15 -20 -19 -15 -13 -13 -16 -22 -27 -30 -30 -28 -25 -22 -19 -18 -20 -20 -20 -18 -17 -15 -12 -9 -8 -12 -19 -23 -20 -15 -10 -10 -14 -18 -22 -25 -27 -31 -33 -35 -34 -34 -33 -30 -27 -24 -24 -22 -19 -17 -19 -23 -24 -24 -23 -23 -23 -21 -20 -19 -18 -18 -19 -19 -19 -19 -19 -20 -20 -20 -20 -20 -20 -19 -18 -15 -6 -6 -7 -8 -7 -6 -7 -11 -10 -8 -5 -3 -3 -5 -10 -13 -13 -12 -12 -13 -13 -12 -13 -14 -13 -13 -14 -14 -13 -13 -13 -13 -12 -11 -11 -11 -11 -12 -12 -13 -13 -12 -11 -10 -9 -9 -9 -10 -10 -10 -9 -9 -10 -11 -11 -10 -10 -10 -10 -10 -11 -11 -12 -12 -13 -13 -13 -12 -12 -12 -11 -11 -11 -11 -11 -12 -13 -14 -13 -12 -11 -11 -11 -11 -11 -11 -10 -10 -11 -11 -12 -12 -13 -14 -16 -19 -22 -22 -21 -19 -16 -14 -13 -13 -14 -13 -13 -13 -13 -14 -14 -13 -12 -12 -11 -11 -11 -11 -10 -10 -10 -9 -9 -9 -7 -6 -5 -3 -2 -1 0 0 0 -0 -0 0 -0 -1 -3 -5 -6 -8 -10 -12 -13 -14 -12 -9 -6 -4 -0 2 5 5 4 2 -3 -5 -10 -15 -17 -18 -17 -15 -12 -10 -10 -10 -10 -10 -12 -12 -11 -8 -4 -1 0 -1 -4 -8 -11 -13 -14 -15 -16 -17 -19 -21 -23 -24 -24 -23 -23 -24 -25 -26 -22 -17 -13 -11 -11 -13 -15 -17 -18 -19 -20 -23 -27 -31 -33 -31 -28 -24 -23 -24 -25 -25 -24 -23 -22 -20 -17 -14 -12 -11 -12 -13 -15 -18 -20 -22 -20 -15 -7 1 5 5 3 2 2 3 5 5 3 1 -2 -4 -4 -5 -7 -9 -12 -15 -17 -19 -20 -20 -20 -18 -16 -14 -14 -15 -18 -21 -24 -24 -19 -13 -7 -3 -3 -3 -4 -4 -6 -8 -10 -11 -12 -13 -15 -17 -17 -14 -11 -10 -12 -15 -18 -19 -18 -17 -16 -15 -15 -15 -14 -11 -9 -9 -11 -12 -12 -12 -11 -11 -10 -7 -0 7 10 12 13 13 11 5 -1 -7 -10 -11 -6 -1 1 1 -3 -8 -12 -15 -15 -14 -11 -9 -9 -11 -15 -21 -23 -21 -16 -12 -13 -18 -24 -28 -29 -29 -27 -23 -20 -19 -21 -23 -23 -21 -19 -17 -16 -13 -9 -9 -16 -22 -23 -19 -12 -8 -10 -14 -19 -22 -23 -26 -29 -32 -33 -33 -33 -32 -29 -26 -25 -24 -20 -17 -18 -22 -24 -25 -24 -24 -23 -20 -19 -19 -17 -18 -18 -19 -19 -20 -20 -21 -22 -22 -22 -22 -22 -21 -19 -16 -10 -9 -9 -9 -9 -7 -7 -19 -18 -16 -12 -9 -7 -8 -11 -14 -15 -15 -16 -16 -14 -12 -12 -15 -19 -17 -15 -14 -14 -13 -13 -13 -13 -13 -13 -14 -14 -14 -15 -16 -15 -13 -12 -11 -10 -9 -9 -10 -10 -9 -8 -8 -8 -8 -7 -6 -7 -7 -8 -9 -9 -10 -10 -10 -11 -10 -10 -10 -10 -10 -9 -9 -9 -8 -8 -8 -10 -11 -12 -11 -10 -10 -10 -9 -9 -10 -10 -10 -10 -10 -11 -11 -11 -11 -13 -15 -18 -20 -20 -20 -17 -15 -13 -13 -13 -12 -11 -10 -11 -12 -12 -12 -12 -12 -12 -12 -11 -11 -10 -10 -10 -10 -10 -11 -11 -11 -10 -9 -8 -6 -5 -3 -2 -1 -0 0 1 1 -0 -2 -3 -5 -7 -9 -12 -14 -15 -15 -15 -13 -10 -6 -3 0 2 4 3 2 -2 -8 -13 -17 -19 -18 -16 -14 -13 -12 -11 -10 -10 -11 -12 -12 -10 -7 -3 -1 -1 -3 -6 -10 -13 -15 -15 -16 -17 -20 -22 -24 -25 -23 -23 -24 -26 -27 -23 -20 -16 -14 -12 -10 -11 -13 -15 -17 -18 -20 -23 -27 -31 -34 -32 -30 -27 -24 -23 -24 -25 -25 -25 -24 -23 -20 -18 -15 -12 -11 -12 -15 -18 -22 -23 -22 -17 -9 -1 3 4 2 0 0 2 3 4 3 -0 -3 -4 -6 -6 -7 -9 -12 -14 -17 -19 -20 -20 -20 -18 -16 -14 -14 -15 -18 -22 -23 -22 -18 -12 -6 -5 -5 -5 -5 -5 -7 -8 -10 -11 -11 -13 -15 -17 -18 -16 -14 -14 -15 -17 -18 -19 -18 -17 -16 -16 -17 -17 -15 -11 -7 -8 -9 -10 -10 -9 -11 -12 -12 -8 -1 9 16 20 21 17 12 5 -1 -7 -10 -7 0 6 7 3 -3 -8 -12 -14 -14 -13 -11 -11 -13 -16 -21 -24 -24 -21 -16 -14 -17 -21 -26 -28 -28 -27 -25 -22 -19 -21 -25 -27 -26 -22 -20 -19 -17 -14 -9 -10 -17 -22 -23 -16 -9 -8 -10 -15 -19 -20 -22 -25 -29 -31 -31 -31 -32 -33 -31 -27 -24 -20 -16 -17 -22 -24 -26 -26 -26 -24 -21 -19 -19 -17 -17 -18 -18 -19 -20 -21 -22 -23 -24 -24 -23 -23 -22 -21 -19 -16 -14 -12 -10 -11 -7 -7 -23 -23 -22 -19 -17 -15 -15 -15 -16 -17 -17 -17 -20 -21 -18 -15 -14 -16 -17 -17 -16 -16 -14 -14 -13 -13 -14 -14 -16 -17 -17 -17 -17 -16 -15 -14 -14 -14 -12 -11 -11 -10 -9 -9 -9 -8 -7 -6 -5 -6 -7 -8 -9 -9 -9 -9 -10 -10 -10 -9 -8 -8 -9 -9 -8 -7 -5 -5 -5 -6 -7 -8 -9 -9 -9 -8 -7 -7 -8 -9 -9 -9 -9 -9 -9 -9 -9 -10 -12 -14 -16 -18 -19 -18 -16 -14 -12 -12 -12 -11 -10 -9 -9 -10 -9 -9 -10 -11 -12 -12 -12 -12 -11 -11 -10 -11 -11 -11 -12 -12 -12 -11 -10 -9 -7 -5 -4 -2 -1 0 0 0 -1 -1 -3 -4 -6 -8 -11 -13 -15 -17 -18 -17 -13 -10 -6 -2 1 2 4 2 -2 -6 -12 -14 -16 -17 -16 -15 -14 -13 -11 -10 -11 -12 -13 -13 -12 -9 -6 -2 0 -0 -4 -8 -11 -13 -15 -16 -18 -20 -22 -23 -24 -24 -25 -26 -27 -25 -23 -22 -22 -21 -16 -11 -10 -11 -14 -16 -18 -22 -26 -30 -33 -33 -31 -28 -24 -22 -22 -24 -25 -25 -25 -25 -25 -23 -20 -16 -13 -11 -11 -14 -18 -22 -24 -24 -20 -12 -4 1 2 -0 -3 -3 -1 1 2 1 -1 -3 -5 -6 -7 -8 -9 -11 -14 -16 -18 -20 -20 -20 -18 -15 -14 -13 -15 -18 -22 -23 -21 -16 -10 -7 -6 -6 -6 -6 -6 -7 -9 -10 -11 -12 -15 -18 -20 -20 -18 -15 -14 -15 -17 -19 -19 -19 -18 -17 -18 -18 -18 -16 -11 -7 -7 -8 -9 -8 -9 -11 -14 -14 -10 0 11 19 22 20 16 11 6 -0 -6 -9 -7 -2 3 4 1 -4 -8 -12 -13 -13 -13 -13 -14 -15 -19 -23 -26 -25 -21 -18 -17 -19 -23 -27 -27 -27 -25 -22 -19 -21 -25 -28 -28 -25 -23 -23 -22 -18 -13 -10 -13 -19 -24 -22 -14 -8 -6 -9 -14 -17 -20 -23 -27 -29 -28 -27 -28 -33 -33 -28 -22 -18 -16 -16 -20 -24 -26 -28 -28 -26 -23 -21 -19 -17 -15 -16 -17 -19 -21 -22 -23 -23 -24 -24 -24 -23 -23 -23 -22 -19 -16 -14 -13 -14 -9 -7 -20 -20 -20 -19 -18 -17 -17 -18 -17 -16 -16 -15 -16 -18 -19 -18 -15 -14 -15 -16 -17 -17 -15 -13 -12 -12 -11 -12 -15 -17 -18 -17 -16 -16 -15 -15 -16 -15 -15 -14 -13 -12 -11 -11 -11 -11 -10 -9 -7 -7 -8 -9 -11 -11 -10 -10 -11 -11 -11 -10 -10 -10 -10 -10 -8 -6 -5 -4 -4 -5 -6 -7 -7 -8 -7 -6 -5 -5 -6 -6 -7 -7 -7 -8 -8 -8 -8 -8 -9 -10 -12 -14 -17 -18 -17 -15 -12 -11 -11 -11 -10 -9 -8 -8 -8 -7 -6 -7 -8 -9 -10 -11 -12 -13 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -10 -8 -6 -4 -2 -1 -1 -1 -0 -0 -1 -2 -3 -5 -6 -8 -11 -14 -18 -20 -18 -15 -12 -9 -6 -3 -0 1 -1 -3 -7 -10 -12 -14 -16 -16 -15 -14 -14 -13 -12 -13 -13 -14 -15 -14 -12 -8 -4 -0 0 -1 -4 -8 -11 -13 -16 -17 -19 -21 -23 -24 -25 -26 -26 -26 -26 -28 -29 -30 -25 -17 -10 -8 -9 -12 -15 -20 -26 -29 -33 -33 -33 -31 -27 -24 -23 -23 -23 -22 -22 -23 -25 -26 -26 -24 -19 -15 -12 -11 -12 -16 -21 -25 -26 -22 -15 -9 -4 -4 -7 -10 -10 -7 -3 -1 -1 -2 -4 -6 -7 -7 -8 -9 -11 -13 -16 -18 -19 -20 -20 -18 -15 -13 -13 -15 -19 -22 -22 -20 -15 -10 -8 -7 -7 -7 -7 -8 -9 -10 -12 -13 -15 -17 -19 -20 -19 -17 -15 -14 -15 -17 -19 -19 -19 -18 -18 -20 -21 -21 -18 -10 -6 -6 -8 -8 -8 -9 -12 -15 -16 -11 -2 9 18 20 19 16 12 6 -0 -6 -9 -8 -5 -1 0 -2 -5 -9 -11 -12 -13 -13 -13 -14 -17 -22 -26 -28 -25 -21 -19 -18 -20 -24 -27 -27 -24 -21 -18 -20 -23 -26 -28 -28 -27 -26 -24 -22 -18 -13 -11 -14 -19 -22 -19 -12 -7 -6 -10 -14 -18 -21 -24 -26 -24 -24 -26 -30 -30 -26 -22 -18 -16 -16 -19 -22 -25 -28 -29 -28 -26 -23 -21 -18 -16 -15 -16 -18 -20 -22 -23 -23 -24 -24 -25 -24 -23 -25 -23 -21 -17 -14 -14 -14 -10 -7 -17 -17 -16 -15 -15 -15 -16 -17 -16 -15 -14 -13 -12 -14 -16 -16 -15 -13 -13 -14 -15 -14 -13 -12 -11 -10 -9 -10 -12 -14 -16 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -13 -13 -14 -14 -10 -9 -10 -11 -12 -12 -12 -12 -12 -12 -12 -13 -13 -13 -12 -11 -9 -8 -7 -7 -7 -7 -7 -7 -7 -6 -5 -5 -4 -4 -5 -5 -4 -3 -3 -4 -4 -5 -6 -7 -7 -7 -8 -10 -13 -15 -16 -15 -13 -11 -10 -10 -10 -10 -8 -8 -8 -7 -6 -4 -4 -5 -6 -7 -9 -11 -13 -13 -14 -14 -13 -13 -13 -13 -13 -12 -12 -10 -8 -6 -4 -3 -2 -1 -0 1 1 0 -1 -1 -2 -4 -7 -11 -15 -18 -19 -19 -17 -14 -12 -9 -7 -5 -4 -5 -6 -7 -8 -11 -13 -15 -16 -15 -15 -14 -14 -14 -14 -15 -16 -16 -16 -14 -10 -6 -1 2 2 -0 -3 -7 -11 -14 -16 -19 -21 -22 -22 -23 -24 -25 -28 -30 -30 -30 -28 -22 -15 -8 -6 -8 -12 -17 -24 -28 -32 -32 -32 -32 -30 -28 -25 -23 -21 -20 -19 -21 -23 -26 -27 -27 -25 -22 -18 -14 -12 -13 -16 -19 -23 -24 -23 -19 -15 -12 -12 -15 -16 -15 -12 -8 -6 -4 -4 -6 -7 -7 -8 -8 -10 -11 -13 -15 -17 -19 -21 -20 -18 -16 -13 -14 -16 -19 -22 -22 -19 -14 -10 -8 -8 -9 -10 -11 -12 -13 -14 -14 -13 -14 -16 -19 -20 -19 -17 -14 -13 -14 -16 -18 -19 -19 -19 -20 -21 -23 -22 -15 -8 -4 -5 -7 -7 -8 -9 -12 -15 -15 -12 -5 6 14 18 18 16 12 7 0 -6 -11 -12 -8 -5 -3 -4 -6 -9 -11 -13 -13 -13 -13 -15 -20 -25 -28 -27 -24 -22 -20 -20 -23 -25 -26 -25 -21 -17 -16 -17 -22 -27 -30 -30 -29 -26 -24 -21 -17 -13 -11 -13 -17 -19 -17 -11 -5 -7 -11 -15 -19 -22 -23 -22 -23 -25 -26 -25 -23 -21 -19 -17 -16 -17 -20 -23 -27 -29 -29 -28 -27 -25 -21 -18 -16 -16 -16 -19 -21 -22 -22 -23 -24 -25 -25 -25 -26 -25 -23 -20 -17 -13 -12 -11 -9 -16 -15 -14 -13 -12 -13 -15 -16 -16 -16 -15 -14 -13 -13 -14 -14 -14 -13 -13 -13 -12 -10 -10 -10 -10 -10 -10 -10 -11 -12 -13 -14 -14 -13 -12 -11 -10 -10 -11 -12 -13 -15 -19 -21 -18 -15 -13 -11 -9 -9 -9 -9 -10 -12 -12 -12 -12 -12 -13 -13 -13 -13 -12 -12 -11 -11 -10 -10 -10 -10 -10 -9 -8 -8 -7 -7 -6 -6 -6 -6 -5 -4 -3 -3 -3 -3 -4 -6 -6 -6 -6 -7 -9 -12 -14 -15 -14 -11 -9 -9 -9 -8 -8 -6 -7 -7 -7 -5 -4 -3 -3 -3 -3 -5 -8 -10 -12 -14 -14 -15 -14 -14 -13 -13 -12 -11 -9 -7 -5 -3 -2 -1 0 1 2 1 1 1 1 1 -1 -5 -10 -14 -17 -18 -18 -17 -17 -16 -14 -12 -10 -9 -8 -7 -7 -8 -11 -13 -14 -15 -15 -15 -15 -16 -16 -16 -16 -16 -17 -17 -16 -12 -7 -2 2 4 3 -0 -4 -7 -11 -16 -20 -21 -21 -20 -22 -25 -28 -28 -27 -27 -27 -23 -17 -11 -6 -7 -9 -14 -21 -26 -29 -29 -30 -31 -31 -30 -28 -25 -22 -20 -20 -20 -21 -23 -25 -26 -26 -25 -23 -20 -16 -14 -14 -15 -18 -22 -23 -22 -19 -14 -11 -11 -13 -16 -19 -16 -13 -11 -10 -9 -8 -8 -9 -10 -11 -12 -14 -15 -16 -18 -21 -22 -21 -19 -16 -14 -15 -17 -20 -22 -21 -18 -14 -12 -11 -12 -13 -14 -14 -15 -15 -15 -14 -13 -13 -16 -18 -20 -19 -17 -14 -13 -15 -17 -20 -20 -19 -19 -20 -22 -23 -19 -12 -6 -4 -5 -6 -7 -8 -8 -10 -13 -14 -13 -8 1 10 16 18 16 12 6 -1 -10 -15 -14 -11 -8 -7 -7 -9 -11 -13 -14 -14 -14 -16 -19 -22 -26 -26 -25 -24 -23 -22 -22 -23 -24 -24 -22 -18 -16 -16 -20 -26 -31 -32 -31 -28 -26 -23 -21 -17 -13 -10 -13 -17 -19 -16 -10 -7 -8 -12 -17 -21 -22 -23 -23 -24 -23 -21 -21 -21 -21 -19 -17 -17 -18 -20 -24 -28 -30 -30 -30 -28 -25 -22 -19 -17 -17 -19 -21 -22 -22 -22 -23 -25 -26 -27 -28 -27 -25 -23 -21 -16 -15 -14 -14 -16 -15 -15 -13 -13 -14 -15 -16 -17 -17 -17 -17 -18 -19 -19 -18 -16 -14 -13 -13 -12 -10 -10 -11 -12 -13 -15 -16 -16 -17 -18 -17 -16 -15 -15 -13 -11 -9 -9 -10 -11 -12 -13 -14 -15 -15 -13 -12 -10 -8 -8 -8 -9 -9 -9 -8 -8 -8 -9 -10 -10 -11 -11 -10 -10 -11 -11 -11 -10 -10 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -7 -6 -5 -4 -3 -3 -4 -5 -6 -6 -6 -6 -7 -9 -11 -12 -12 -11 -8 -8 -7 -7 -7 -6 -5 -5 -6 -6 -5 -4 -3 -2 -2 -2 -3 -5 -7 -9 -11 -12 -13 -13 -13 -13 -12 -11 -10 -9 -8 -6 -5 -2 1 2 3 3 3 4 5 5 3 1 -3 -7 -12 -14 -15 -15 -17 -19 -20 -19 -16 -14 -11 -9 -8 -8 -10 -12 -13 -14 -15 -15 -16 -17 -17 -17 -17 -17 -17 -18 -19 -18 -14 -10 -5 0 3 3 -0 -3 -5 -10 -17 -20 -20 -21 -23 -25 -26 -27 -27 -26 -26 -23 -19 -15 -12 -11 -12 -15 -19 -21 -24 -26 -27 -28 -29 -30 -29 -27 -25 -23 -23 -22 -21 -22 -22 -24 -25 -26 -26 -24 -21 -18 -16 -15 -16 -18 -21 -22 -22 -20 -15 -11 -9 -11 -14 -16 -18 -19 -18 -14 -11 -11 -12 -14 -15 -16 -18 -19 -19 -19 -22 -24 -25 -23 -20 -18 -17 -17 -19 -21 -22 -21 -19 -17 -16 -16 -16 -16 -15 -15 -16 -16 -15 -13 -11 -12 -15 -18 -20 -19 -17 -15 -14 -16 -18 -19 -19 -18 -19 -20 -22 -20 -16 -9 -4 -4 -5 -7 -7 -8 -9 -11 -14 -15 -15 -11 -3 6 15 17 15 11 4 -5 -13 -16 -16 -15 -14 -12 -12 -13 -14 -14 -15 -17 -17 -18 -20 -24 -25 -26 -25 -25 -22 -21 -20 -21 -22 -22 -21 -19 -17 -18 -22 -28 -32 -32 -31 -28 -25 -23 -21 -17 -11 -11 -14 -18 -19 -15 -8 -8 -12 -17 -23 -25 -24 -24 -24 -22 -20 -20 -20 -21 -20 -18 -17 -17 -18 -22 -26 -30 -31 -31 -31 -28 -25 -22 -20 -19 -20 -21 -21 -21 -21 -22 -23 -25 -27 -28 -28 -26 -24 -24 -21 -20 -20 -19 -17 -17 -16 -16 -15 -16 -16 -16 -17 -17 -18 -19 -22 -25 -25 -23 -20 -18 -14 -13 -13 -13 -14 -14 -14 -16 -19 -21 -20 -20 -20 -21 -21 -22 -21 -20 -19 -17 -15 -14 -13 -13 -13 -11 -11 -12 -12 -11 -10 -8 -7 -6 -6 -6 -6 -4 -4 -4 -6 -6 -7 -7 -7 -6 -6 -7 -7 -7 -6 -6 -6 -6 -5 -5 -6 -6 -7 -7 -8 -9 -9 -8 -8 -6 -5 -4 -4 -5 -6 -6 -6 -7 -7 -8 -9 -11 -12 -12 -9 -8 -7 -6 -6 -5 -4 -3 -3 -4 -4 -4 -4 -4 -3 -2 -1 -2 -3 -5 -7 -8 -9 -9 -10 -10 -10 -10 -9 -9 -8 -8 -7 -5 -3 0 2 3 3 4 5 6 6 4 2 -2 -6 -10 -13 -14 -15 -19 -21 -22 -20 -17 -15 -13 -11 -11 -10 -12 -12 -13 -14 -15 -16 -17 -17 -17 -17 -18 -18 -18 -19 -20 -19 -17 -13 -8 -2 1 1 0 -1 -4 -10 -14 -17 -19 -21 -22 -24 -25 -25 -24 -23 -22 -21 -22 -23 -23 -22 -19 -15 -14 -15 -19 -23 -25 -26 -27 -27 -28 -28 -26 -26 -24 -22 -21 -21 -22 -23 -24 -25 -26 -25 -23 -21 -18 -16 -17 -18 -21 -23 -24 -21 -16 -11 -9 -11 -13 -15 -17 -17 -16 -14 -14 -15 -16 -17 -19 -20 -21 -21 -21 -23 -25 -26 -27 -26 -24 -22 -21 -22 -23 -24 -24 -22 -19 -16 -15 -16 -16 -16 -15 -16 -16 -17 -16 -12 -10 -11 -14 -17 -19 -19 -17 -16 -15 -16 -17 -17 -17 -18 -19 -21 -21 -19 -14 -8 -5 -4 -5 -7 -7 -8 -9 -11 -13 -15 -16 -13 -6 4 12 15 14 9 1 -8 -14 -17 -19 -19 -17 -15 -15 -15 -14 -15 -15 -15 -17 -18 -21 -24 -26 -26 -24 -22 -20 -18 -17 -19 -21 -22 -21 -19 -17 -19 -23 -28 -32 -33 -30 -27 -25 -23 -21 -15 -11 -12 -16 -21 -20 -14 -11 -12 -17 -22 -24 -25 -25 -25 -23 -20 -19 -19 -21 -20 -19 -17 -16 -17 -20 -24 -28 -30 -30 -32 -31 -28 -26 -23 -21 -21 -21 -21 -21 -21 -20 -21 -23 -26 -28 -28 -27 -25 -25 -23 -23 -23 -21 -18 -18 -18 -18 -18 -17 -16 -16 -17 -17 -18 -20 -23 -26 -23 -19 -16 -15 -15 -15 -15 -16 -18 -19 -16 -16 -17 -19 -20 -19 -19 -19 -20 -21 -22 -22 -23 -22 -22 -21 -17 -14 -12 -10 -9 -9 -9 -9 -8 -7 -5 -5 -4 -4 -4 -4 -4 -4 -5 -5 -6 -6 -6 -4 -4 -4 -4 -4 -3 -3 -3 -2 -2 -2 -2 -2 -3 -4 -6 -7 -8 -8 -8 -7 -6 -5 -5 -5 -6 -7 -7 -7 -8 -8 -9 -10 -12 -13 -11 -9 -7 -6 -6 -5 -4 -3 -2 -2 -2 -3 -3 -3 -4 -3 -2 -2 -2 -3 -4 -4 -5 -5 -5 -6 -7 -6 -6 -7 -7 -8 -8 -8 -7 -5 -2 0 2 4 5 6 7 6 5 3 2 -0 -3 -7 -11 -16 -20 -22 -23 -21 -19 -16 -14 -12 -12 -12 -13 -13 -14 -14 -14 -15 -16 -17 -18 -19 -18 -18 -19 -19 -19 -19 -18 -14 -10 -4 -1 1 2 2 -1 -5 -9 -12 -15 -18 -20 -22 -23 -23 -22 -21 -20 -20 -22 -25 -27 -26 -22 -18 -15 -16 -18 -20 -21 -22 -24 -27 -29 -29 -27 -25 -22 -21 -20 -21 -21 -22 -24 -26 -27 -26 -24 -21 -19 -17 -18 -19 -22 -25 -26 -23 -17 -11 -7 -8 -10 -12 -14 -14 -13 -12 -12 -13 -14 -15 -17 -18 -20 -22 -23 -24 -25 -26 -26 -26 -24 -23 -22 -22 -23 -24 -23 -21 -18 -16 -15 -15 -15 -15 -16 -17 -18 -19 -17 -12 -9 -10 -13 -17 -19 -19 -17 -16 -16 -16 -16 -16 -17 -18 -20 -22 -21 -19 -14 -8 -5 -4 -6 -7 -8 -8 -9 -10 -13 -15 -16 -15 -9 0 8 12 11 6 -2 -10 -15 -19 -20 -21 -19 -18 -18 -17 -16 -15 -13 -13 -13 -15 -19 -24 -27 -27 -24 -21 -18 -16 -17 -20 -22 -23 -21 -18 -18 -21 -26 -31 -34 -31 -28 -26 -24 -22 -19 -14 -11 -12 -19 -21 -18 -15 -13 -16 -21 -24 -26 -26 -25 -23 -20 -19 -19 -20 -20 -19 -18 -16 -16 -18 -22 -26 -29 -29 -32 -32 -30 -28 -26 -24 -22 -21 -20 -20 -20 -19 -19 -21 -24 -27 -29 -28 -26 -24 -23 -23 -23 -22 -17 -18 -18 -18 -18 -17 -16 -17 -18 -18 -18 -19 -19 -19 -18 -16 -14 -12 -13 -13 -12 -12 -12 -13 -13 -13 -13 -14 -14 -14 -13 -14 -14 -16 -16 -17 -18 -20 -22 -23 -21 -19 -16 -14 -11 -9 -9 -9 -9 -7 -6 -5 -5 -6 -6 -7 -8 -8 -8 -9 -9 -10 -9 -8 -7 -7 -7 -6 -6 -5 -4 -3 -2 -2 -1 -1 -1 -2 -3 -4 -5 -5 -6 -6 -5 -4 -5 -5 -6 -7 -7 -8 -8 -8 -8 -9 -11 -12 -11 -11 -9 -7 -6 -6 -5 -4 -2 -1 -0 -1 -1 -1 -2 -3 -3 -3 -2 -2 -2 -3 -2 -2 -2 -1 -1 -1 -2 -3 -4 -6 -7 -7 -8 -9 -7 -5 -2 0 2 4 5 6 6 6 6 6 4 1 -5 -11 -16 -20 -22 -23 -22 -20 -17 -14 -12 -12 -12 -13 -13 -13 -13 -14 -15 -18 -19 -19 -18 -18 -19 -18 -18 -18 -18 -17 -16 -12 -8 -3 0 3 2 0 -1 -2 -7 -11 -14 -17 -19 -22 -22 -21 -20 -19 -20 -24 -29 -31 -30 -24 -19 -16 -16 -16 -17 -18 -19 -22 -26 -28 -28 -26 -23 -21 -20 -20 -21 -22 -23 -25 -26 -26 -24 -23 -21 -19 -18 -19 -21 -25 -29 -30 -27 -20 -13 -8 -7 -8 -11 -14 -14 -13 -13 -13 -13 -14 -14 -15 -17 -18 -20 -22 -23 -24 -24 -25 -24 -23 -22 -22 -22 -23 -23 -22 -20 -17 -15 -14 -14 -15 -15 -16 -18 -21 -21 -17 -12 -9 -9 -13 -17 -19 -18 -17 -17 -16 -16 -15 -16 -17 -20 -22 -23 -22 -19 -13 -8 -5 -5 -7 -9 -9 -9 -9 -11 -13 -16 -17 -16 -11 -3 3 5 3 -3 -8 -12 -16 -20 -22 -22 -21 -20 -19 -18 -16 -13 -12 -12 -14 -17 -21 -26 -28 -27 -23 -20 -17 -16 -19 -22 -24 -23 -20 -18 -19 -22 -28 -32 -33 -32 -30 -27 -24 -22 -18 -13 -10 -14 -18 -19 -17 -15 -17 -21 -24 -25 -25 -25 -24 -22 -21 -20 -20 -21 -21 -19 -17 -15 -16 -20 -24 -27 -28 -30 -31 -30 -29 -28 -26 -24 -21 -20 -20 -19 -18 -18 -19 -22 -26 -29 -29 -27 -23 -21 -21 -22 -21 -17 -17 -15 -15 -14 -14 -14 -15 -15 -14 -13 -13 -12 -12 -11 -8 -7 -7 -8 -9 -9 -8 -7 -8 -9 -10 -10 -10 -10 -10 -9 -10 -10 -11 -10 -10 -11 -13 -15 -17 -19 -20 -20 -18 -15 -13 -12 -12 -12 -11 -9 -9 -9 -10 -11 -12 -13 -14 -14 -14 -15 -15 -15 -14 -14 -15 -15 -14 -13 -12 -11 -9 -8 -7 -7 -6 -5 -4 -4 -4 -3 -3 -3 -3 -2 -2 -3 -3 -3 -5 -6 -7 -7 -7 -8 -8 -9 -9 -10 -10 -9 -8 -7 -7 -7 -6 -5 -4 -2 -1 -1 0 -0 -1 -2 -3 -3 -2 -2 -2 -2 -1 1 3 3 3 3 2 0 -1 -3 -4 -6 -8 -9 -9 -7 -6 -4 -2 -0 1 3 3 5 7 8 7 3 -3 -9 -14 -19 -22 -23 -22 -20 -18 -15 -13 -12 -12 -12 -13 -14 -15 -16 -17 -18 -18 -17 -17 -17 -17 -17 -18 -18 -18 -18 -17 -15 -11 -7 -4 -3 -1 2 3 0 -4 -7 -9 -13 -17 -19 -19 -18 -18 -18 -22 -26 -30 -32 -31 -26 -22 -18 -15 -14 -14 -16 -19 -24 -26 -26 -25 -22 -21 -21 -21 -21 -22 -24 -26 -26 -25 -24 -23 -23 -21 -20 -20 -21 -24 -28 -31 -32 -29 -21 -14 -9 -7 -7 -9 -11 -13 -14 -14 -12 -12 -12 -13 -15 -15 -17 -20 -22 -23 -24 -24 -23 -22 -21 -21 -22 -22 -23 -23 -22 -19 -16 -14 -13 -14 -15 -16 -17 -20 -24 -23 -19 -13 -8 -10 -14 -17 -18 -18 -17 -16 -16 -15 -15 -16 -18 -20 -22 -23 -22 -18 -13 -8 -5 -7 -9 -11 -11 -10 -11 -13 -14 -16 -17 -16 -11 -6 -1 2 -1 -4 -7 -12 -18 -22 -23 -21 -19 -19 -19 -18 -16 -13 -12 -13 -15 -18 -23 -26 -26 -24 -21 -18 -17 -19 -22 -24 -25 -22 -20 -18 -19 -24 -31 -35 -36 -33 -30 -26 -25 -23 -19 -12 -12 -15 -18 -18 -16 -17 -20 -22 -24 -24 -26 -26 -25 -23 -21 -20 -21 -22 -21 -19 -14 -14 -18 -23 -26 -29 -31 -32 -29 -29 -29 -29 -26 -23 -20 -19 -18 -18 -18 -19 -22 -25 -26 -25 -23 -20 -17 -16 -20 -21 -13 -13 -12 -11 -11 -11 -11 -11 -11 -10 -8 -7 -6 -6 -6 -6 -6 -6 -6 -7 -7 -6 -5 -6 -8 -8 -9 -9 -8 -8 -8 -9 -8 -8 -8 -7 -8 -9 -9 -10 -12 -14 -16 -17 -17 -17 -17 -17 -16 -16 -15 -14 -14 -14 -14 -15 -17 -18 -19 -18 -19 -19 -19 -18 -18 -19 -20 -21 -21 -20 -19 -18 -16 -15 -14 -13 -12 -11 -10 -9 -7 -6 -4 -1 1 1 1 1 0 -1 -2 -3 -4 -5 -6 -6 -6 -6 -5 -5 -5 -4 -4 -5 -6 -7 -8 -7 -6 -5 -4 -3 -2 -1 -1 -1 -1 -0 -0 0 1 1 2 4 5 6 6 5 5 4 3 2 -1 -4 -6 -8 -9 -9 -8 -7 -6 -5 -3 -2 1 3 5 7 6 3 -1 -6 -11 -16 -19 -21 -21 -20 -19 -17 -15 -14 -13 -13 -14 -15 -16 -17 -18 -19 -18 -18 -17 -17 -17 -17 -17 -18 -19 -20 -20 -18 -16 -13 -11 -8 -2 4 6 4 2 -1 -4 -10 -13 -14 -15 -15 -17 -19 -22 -26 -30 -33 -31 -28 -24 -18 -14 -12 -12 -15 -20 -23 -25 -25 -24 -23 -24 -24 -24 -24 -24 -25 -25 -24 -23 -23 -23 -22 -22 -22 -21 -22 -25 -29 -32 -32 -28 -21 -15 -11 -8 -7 -9 -11 -13 -13 -11 -10 -10 -12 -13 -13 -14 -17 -20 -24 -24 -22 -21 -21 -21 -21 -21 -21 -22 -23 -23 -21 -19 -15 -13 -13 -13 -14 -16 -18 -23 -26 -26 -20 -12 -9 -11 -14 -16 -17 -17 -17 -16 -16 -15 -16 -17 -19 -21 -23 -23 -22 -18 -13 -8 -7 -9 -11 -13 -13 -13 -13 -13 -14 -16 -17 -16 -12 -7 -2 0 -0 -3 -8 -14 -18 -19 -18 -17 -18 -19 -20 -19 -17 -14 -13 -15 -17 -21 -22 -22 -22 -22 -21 -19 -19 -20 -22 -24 -25 -23 -20 -18 -20 -28 -34 -37 -37 -34 -31 -28 -26 -24 -20 -13 -12 -15 -16 -16 -16 -17 -20 -21 -23 -26 -27 -27 -27 -26 -24 -22 -22 -21 -18 -13 -13 -16 -21 -25 -30 -34 -34 -30 -30 -30 -31 -29 -26 -22 -19 -17 -17 -18 -19 -21 -22 -20 -16 -16 -14 -12 -12 -20 -21 -10 -10 -9 -9 -8 -8 -7 -7 -7 -8 -7 -6 -6 -6 -7 -8 -9 -9 -9 -9 -8 -8 -8 -9 -9 -10 -9 -9 -9 -10 -10 -10 -10 -10 -10 -10 -10 -9 -8 -9 -10 -12 -13 -15 -16 -17 -18 -18 -18 -17 -17 -16 -16 -16 -15 -16 -17 -17 -18 -18 -19 -19 -18 -17 -17 -18 -19 -20 -21 -22 -21 -20 -19 -17 -17 -16 -16 -16 -16 -15 -15 -13 -11 -7 -4 -2 -0 1 2 1 -0 -1 -2 -1 -2 -3 -4 -4 -3 -2 -0 2 2 2 -0 -3 -5 -7 -7 -8 -8 -8 -7 -5 -3 -2 -1 0 2 3 4 4 5 5 6 7 8 7 7 7 7 7 6 4 1 -2 -6 -8 -8 -8 -8 -8 -8 -7 -6 -4 -2 0 2 3 3 1 -2 -8 -12 -16 -18 -20 -21 -21 -20 -18 -16 -14 -14 -14 -15 -16 -17 -17 -17 -17 -17 -17 -17 -17 -17 -18 -18 -19 -20 -21 -22 -21 -19 -16 -13 -6 2 6 7 6 4 -1 -5 -7 -9 -11 -16 -19 -23 -25 -26 -28 -29 -30 -29 -24 -20 -16 -13 -13 -17 -19 -20 -20 -21 -22 -25 -26 -24 -23 -22 -24 -24 -23 -22 -21 -22 -22 -22 -22 -22 -22 -23 -26 -29 -31 -30 -27 -22 -17 -13 -10 -9 -9 -11 -12 -11 -10 -9 -9 -10 -11 -12 -13 -15 -18 -21 -22 -20 -19 -19 -19 -19 -19 -20 -22 -23 -23 -21 -18 -15 -13 -12 -13 -14 -17 -20 -23 -26 -24 -18 -13 -11 -12 -14 -16 -16 -16 -16 -16 -16 -16 -17 -18 -19 -21 -23 -24 -22 -18 -13 -9 -9 -10 -13 -14 -14 -13 -12 -12 -13 -16 -17 -16 -12 -7 -3 -1 -2 -4 -8 -11 -14 -16 -16 -17 -19 -21 -21 -20 -17 -16 -16 -17 -18 -18 -19 -20 -22 -22 -21 -19 -19 -20 -23 -26 -25 -21 -18 -18 -24 -31 -36 -38 -37 -34 -31 -30 -28 -26 -20 -15 -13 -14 -14 -13 -14 -16 -19 -22 -26 -28 -29 -31 -30 -27 -24 -22 -20 -17 -12 -11 -13 -18 -23 -30 -34 -35 -32 -31 -31 -31 -31 -29 -26 -21 -18 -17 -16 -18 -19 -16 -11 -11 -13 -13 -11 -12 -21 -22 -9 -9 -8 -8 -7 -7 -7 -7 -8 -9 -9 -10 -10 -11 -12 -13 -14 -15 -14 -13 -13 -13 -13 -13 -13 -12 -11 -11 -12 -13 -14 -14 -14 -15 -16 -17 -15 -13 -12 -12 -11 -10 -10 -11 -12 -13 -13 -14 -14 -14 -13 -13 -14 -14 -13 -13 -13 -13 -13 -14 -15 -16 -15 -14 -13 -14 -14 -15 -16 -17 -17 -17 -17 -16 -16 -16 -16 -16 -17 -18 -18 -17 -16 -15 -13 -10 -8 -6 -4 -3 -2 -2 -1 -1 -1 -1 -2 -3 -3 -2 -0 2 4 5 5 4 1 -1 -3 -5 -7 -9 -11 -10 -9 -8 -6 -5 -2 0 3 5 6 6 7 6 6 6 6 6 7 9 11 11 10 7 3 -1 -3 -5 -6 -7 -9 -9 -10 -10 -10 -9 -7 -3 -0 1 2 -1 -4 -8 -11 -15 -18 -22 -23 -22 -20 -17 -15 -14 -14 -14 -15 -15 -16 -17 -17 -17 -17 -17 -17 -17 -17 -18 -20 -23 -24 -23 -22 -22 -20 -15 -8 -2 3 5 7 3 -1 -2 -1 -4 -12 -19 -22 -22 -19 -21 -23 -26 -29 -30 -28 -23 -18 -14 -13 -15 -15 -17 -20 -23 -25 -24 -22 -22 -22 -23 -23 -22 -21 -21 -21 -22 -22 -22 -23 -22 -22 -23 -25 -28 -29 -29 -27 -23 -20 -17 -14 -12 -12 -12 -11 -10 -9 -8 -8 -8 -9 -10 -11 -13 -17 -19 -20 -18 -18 -17 -17 -17 -17 -19 -21 -22 -22 -21 -18 -15 -13 -12 -12 -14 -17 -21 -23 -24 -20 -16 -13 -12 -13 -14 -15 -16 -16 -16 -16 -17 -17 -17 -18 -19 -22 -24 -24 -22 -18 -13 -10 -9 -11 -14 -16 -16 -14 -13 -12 -13 -15 -16 -15 -12 -8 -5 -3 -3 -4 -6 -9 -13 -16 -17 -18 -20 -21 -21 -20 -19 -18 -16 -15 -14 -15 -17 -20 -22 -23 -22 -21 -20 -22 -25 -25 -23 -20 -18 -21 -27 -32 -36 -36 -35 -33 -32 -31 -30 -27 -23 -19 -16 -14 -12 -11 -13 -17 -22 -27 -30 -32 -34 -32 -30 -27 -24 -22 -18 -13 -10 -10 -15 -20 -26 -30 -33 -33 -31 -31 -32 -33 -32 -28 -23 -20 -17 -12 -14 -14 -10 -4 -8 -12 -13 -12 -12 -21 -22 -10 -10 -10 -9 -9 -9 -9 -10 -12 -13 -14 -14 -14 -15 -16 -16 -17 -17 -17 -16 -16 -16 -16 -17 -18 -16 -15 -14 -15 -16 -16 -17 -17 -18 -18 -19 -19 -19 -20 -17 -14 -11 -11 -11 -11 -11 -11 -10 -10 -10 -9 -9 -10 -10 -10 -10 -10 -10 -10 -11 -12 -12 -12 -12 -11 -11 -10 -11 -12 -13 -13 -13 -13 -13 -13 -14 -15 -16 -17 -17 -18 -18 -18 -18 -18 -17 -16 -14 -12 -10 -9 -7 -6 -5 -4 -4 -4 -5 -6 -6 -5 -2 -0 2 4 5 6 5 3 1 -1 -5 -9 -11 -12 -12 -11 -10 -9 -7 -5 -2 0 2 3 3 2 2 2 0 1 2 4 5 8 10 10 8 5 2 -1 -4 -7 -7 -8 -10 -12 -15 -16 -14 -11 -6 -1 2 3 1 -2 -6 -12 -17 -22 -24 -23 -20 -18 -17 -16 -15 -14 -14 -14 -15 -16 -17 -17 -17 -17 -17 -17 -18 -20 -22 -24 -25 -23 -23 -23 -22 -19 -14 -8 -3 1 2 3 4 6 4 -3 -10 -13 -12 -10 -11 -14 -19 -24 -28 -29 -27 -23 -19 -14 -12 -12 -14 -18 -23 -23 -22 -20 -20 -21 -21 -21 -21 -21 -20 -20 -21 -21 -22 -23 -23 -23 -23 -23 -24 -25 -26 -27 -26 -25 -24 -21 -18 -14 -13 -12 -11 -10 -9 -8 -8 -8 -8 -8 -9 -12 -15 -18 -18 -18 -17 -16 -15 -15 -16 -19 -21 -23 -23 -21 -17 -15 -12 -11 -12 -14 -17 -20 -22 -21 -18 -16 -13 -13 -14 -15 -16 -15 -15 -16 -17 -18 -18 -19 -19 -21 -23 -24 -24 -22 -18 -13 -11 -11 -14 -16 -17 -17 -16 -14 -14 -14 -15 -16 -15 -13 -10 -7 -5 -4 -4 -6 -9 -13 -15 -16 -16 -17 -20 -21 -22 -20 -17 -13 -11 -11 -13 -17 -21 -24 -24 -22 -21 -22 -25 -26 -25 -22 -19 -21 -24 -29 -33 -34 -34 -34 -33 -33 -32 -30 -28 -25 -22 -17 -12 -9 -10 -15 -23 -29 -33 -35 -36 -34 -32 -29 -26 -24 -21 -16 -12 -9 -12 -17 -22 -26 -29 -31 -30 -30 -32 -35 -35 -32 -27 -21 -13 -5 -7 -9 -7 -1 -6 -11 -13 -14 -13 -21 -23 -13 -13 -13 -13 -12 -12 -13 -14 -16 -18 -18 -17 -16 -16 -15 -15 -16 -17 -17 -16 -15 -15 -15 -16 -17 -17 -16 -16 -15 -15 -14 -14 -14 -14 -16 -18 -19 -18 -16 -14 -13 -11 -10 -11 -12 -11 -10 -8 -7 -7 -7 -7 -7 -7 -8 -7 -7 -8 -8 -9 -9 -9 -10 -11 -11 -10 -10 -11 -11 -11 -10 -10 -9 -9 -10 -11 -12 -13 -14 -15 -15 -16 -16 -17 -18 -19 -19 -19 -18 -17 -16 -14 -13 -12 -11 -10 -10 -10 -10 -11 -10 -9 -7 -4 -1 1 3 4 5 4 2 -0 -3 -7 -10 -12 -13 -13 -12 -11 -11 -10 -8 -7 -5 -5 -4 -4 -3 -6 -7 -7 -7 -6 -3 1 4 7 8 7 6 4 1 -2 -5 -7 -10 -13 -16 -19 -19 -17 -12 -4 3 6 6 2 -3 -9 -15 -20 -23 -22 -21 -20 -19 -18 -16 -14 -13 -13 -13 -14 -15 -16 -17 -17 -17 -17 -19 -21 -22 -23 -22 -21 -22 -23 -22 -19 -16 -13 -11 -8 -4 1 6 8 5 3 2 0 -1 -3 -6 -11 -17 -22 -27 -29 -29 -26 -19 -15 -12 -12 -14 -17 -18 -18 -18 -17 -18 -19 -20 -21 -21 -20 -20 -21 -21 -22 -23 -24 -24 -24 -23 -23 -23 -23 -24 -25 -26 -26 -24 -21 -18 -15 -13 -12 -11 -10 -10 -9 -8 -9 -8 -8 -9 -11 -14 -16 -16 -16 -16 -15 -16 -16 -18 -20 -23 -24 -23 -21 -18 -15 -12 -12 -12 -14 -16 -19 -20 -20 -18 -16 -15 -16 -17 -18 -16 -15 -16 -17 -18 -19 -19 -20 -21 -22 -23 -25 -24 -22 -18 -14 -13 -14 -16 -18 -19 -18 -16 -16 -15 -16 -15 -15 -15 -14 -12 -9 -6 -5 -5 -7 -11 -14 -16 -16 -16 -17 -20 -21 -20 -17 -12 -10 -9 -10 -13 -19 -23 -26 -25 -23 -22 -24 -26 -27 -25 -24 -24 -25 -26 -29 -32 -34 -34 -34 -33 -32 -31 -30 -28 -26 -24 -19 -14 -10 -13 -22 -30 -36 -38 -38 -36 -34 -30 -26 -24 -22 -18 -14 -9 -10 -15 -20 -25 -28 -29 -29 -29 -32 -36 -38 -37 -33 -24 -10 -3 -4 -6 -5 -1 -4 -10 -13 -14 -13 -19 -22 -15 -16 -17 -16 -15 -15 -15 -16 -17 -19 -18 -17 -16 -15 -15 -15 -16 -17 -17 -16 -15 -14 -14 -13 -13 -13 -12 -10 -10 -10 -10 -11 -12 -12 -11 -10 -9 -10 -10 -8 -7 -7 -8 -9 -9 -9 -8 -6 -6 -6 -5 -5 -5 -6 -7 -7 -7 -8 -8 -9 -8 -8 -9 -10 -11 -12 -12 -13 -13 -13 -12 -11 -10 -9 -8 -8 -9 -10 -11 -12 -12 -12 -13 -14 -15 -16 -17 -17 -18 -19 -19 -19 -18 -17 -17 -16 -15 -15 -15 -15 -14 -13 -12 -10 -8 -7 -5 -4 -2 -1 -0 -0 -1 -3 -6 -9 -11 -11 -11 -11 -12 -13 -14 -14 -13 -13 -12 -11 -9 -10 -10 -10 -12 -13 -12 -11 -8 -4 0 4 7 9 8 5 1 -2 -6 -9 -12 -15 -19 -21 -21 -15 -8 -1 5 6 4 -0 -5 -12 -19 -21 -22 -22 -22 -21 -20 -17 -14 -12 -11 -11 -12 -14 -15 -16 -16 -17 -18 -19 -20 -20 -21 -21 -20 -21 -21 -20 -20 -19 -20 -17 -13 -8 -1 4 7 10 10 9 7 5 2 -3 -11 -17 -22 -25 -26 -25 -23 -20 -17 -14 -12 -13 -13 -14 -14 -14 -15 -17 -18 -20 -21 -21 -21 -21 -21 -21 -22 -23 -24 -24 -24 -24 -23 -22 -22 -24 -26 -27 -27 -25 -23 -20 -18 -15 -13 -11 -10 -9 -9 -9 -9 -9 -8 -9 -11 -12 -13 -15 -17 -19 -20 -19 -18 -19 -22 -24 -25 -24 -21 -19 -15 -13 -13 -13 -14 -16 -18 -19 -20 -18 -17 -17 -18 -19 -18 -16 -15 -15 -17 -22 -22 -22 -22 -22 -23 -25 -25 -25 -22 -19 -16 -15 -16 -18 -19 -19 -19 -18 -18 -18 -17 -16 -14 -13 -12 -11 -10 -9 -7 -7 -9 -14 -18 -19 -19 -19 -19 -19 -18 -15 -12 -11 -9 -8 -10 -15 -21 -26 -27 -24 -22 -23 -24 -26 -25 -25 -25 -26 -27 -29 -33 -34 -34 -34 -34 -34 -32 -30 -29 -28 -27 -25 -21 -14 -13 -20 -28 -34 -37 -36 -36 -34 -30 -25 -24 -22 -19 -16 -11 -9 -12 -19 -26 -30 -30 -29 -29 -31 -35 -38 -39 -36 -27 -14 -6 -4 -6 -6 -2 -3 -8 -13 -15 -14 -16 -18 -16 -16 -17 -17 -16 -15 -16 -17 -17 -16 -15 -15 -15 -15 -15 -16 -16 -16 -14 -13 -11 -10 -9 -8 -9 -7 -5 -2 -1 -1 -2 -3 -5 -6 -5 -3 -3 -4 -5 -4 -4 -5 -6 -6 -6 -6 -7 -6 -5 -5 -5 -5 -6 -7 -8 -9 -9 -10 -11 -11 -10 -9 -10 -11 -12 -13 -14 -15 -15 -16 -17 -17 -16 -15 -12 -10 -9 -9 -9 -9 -10 -10 -10 -11 -11 -12 -12 -13 -15 -16 -17 -18 -18 -18 -18 -18 -18 -17 -17 -16 -16 -15 -14 -14 -14 -14 -14 -13 -12 -10 -9 -7 -6 -5 -5 -7 -9 -9 -8 -8 -9 -11 -13 -15 -16 -17 -17 -16 -14 -13 -11 -10 -12 -13 -15 -16 -16 -15 -12 -7 -1 5 9 9 7 4 -0 -4 -7 -10 -14 -18 -21 -21 -18 -12 -5 1 4 4 2 -2 -8 -14 -17 -20 -21 -22 -22 -20 -18 -15 -13 -12 -11 -11 -12 -14 -15 -16 -16 -18 -20 -21 -22 -21 -20 -20 -21 -21 -20 -21 -22 -22 -19 -16 -11 -5 1 6 10 12 12 12 9 4 -3 -8 -12 -14 -16 -18 -21 -22 -21 -19 -16 -15 -13 -12 -11 -11 -13 -14 -16 -18 -20 -21 -22 -22 -22 -21 -22 -23 -24 -26 -27 -27 -26 -25 -23 -24 -26 -27 -26 -25 -24 -23 -22 -20 -17 -13 -11 -10 -10 -10 -9 -10 -10 -10 -10 -9 -10 -13 -16 -18 -19 -18 -17 -17 -19 -22 -25 -26 -25 -23 -20 -17 -15 -13 -14 -16 -17 -18 -19 -19 -18 -18 -19 -21 -21 -19 -17 -16 -16 -20 -22 -23 -22 -22 -22 -24 -25 -25 -25 -23 -20 -18 -18 -19 -20 -20 -20 -20 -20 -20 -19 -18 -16 -14 -12 -12 -12 -12 -11 -9 -9 -13 -17 -20 -21 -20 -19 -17 -16 -13 -12 -11 -10 -8 -8 -11 -18 -23 -25 -23 -22 -21 -22 -24 -25 -26 -27 -27 -28 -30 -32 -34 -35 -36 -36 -35 -33 -31 -29 -29 -28 -27 -26 -21 -17 -19 -24 -30 -33 -33 -34 -32 -27 -22 -22 -22 -21 -18 -14 -11 -11 -14 -21 -28 -31 -32 -31 -30 -33 -36 -38 -37 -31 -21 -12 -7 -7 -10 -4 -3 -7 -12 -16 -15 -13 -14 -15 -15 -15 -16 -14 -14 -15 -15 -15 -15 -14 -13 -13 -14 -14 -15 -14 -12 -10 -9 -7 -6 -5 -5 -8 -6 -2 2 3 2 1 -1 -3 -3 -4 -3 -3 -3 -4 -4 -5 -7 -8 -7 -6 -7 -7 -7 -6 -6 -6 -6 -7 -8 -9 -10 -11 -12 -13 -12 -11 -11 -10 -10 -11 -12 -13 -13 -14 -16 -19 -21 -22 -23 -20 -17 -14 -12 -10 -9 -9 -9 -9 -10 -10 -10 -10 -10 -10 -10 -11 -11 -13 -14 -14 -15 -15 -15 -14 -13 -13 -12 -12 -13 -15 -16 -16 -17 -17 -18 -18 -17 -15 -13 -11 -9 -9 -9 -8 -6 -6 -7 -8 -11 -14 -16 -17 -17 -16 -15 -13 -10 -9 -8 -10 -13 -16 -19 -19 -17 -12 -5 1 6 8 7 5 2 -1 -4 -7 -11 -15 -19 -20 -19 -16 -10 -4 1 3 4 1 -4 -9 -13 -16 -18 -20 -21 -20 -18 -16 -15 -14 -13 -13 -15 -15 -15 -15 -15 -17 -19 -20 -20 -20 -21 -23 -23 -22 -21 -22 -22 -21 -19 -18 -16 -10 -3 3 9 12 14 13 10 4 1 -3 -7 -12 -15 -16 -20 -22 -23 -21 -17 -14 -12 -11 -11 -12 -13 -14 -16 -18 -20 -22 -24 -25 -24 -23 -23 -24 -26 -28 -28 -27 -26 -24 -23 -25 -25 -25 -24 -22 -23 -23 -22 -21 -18 -15 -14 -13 -12 -11 -11 -12 -12 -11 -9 -9 -10 -13 -15 -17 -17 -16 -16 -18 -21 -24 -26 -26 -26 -24 -22 -19 -16 -15 -15 -16 -17 -18 -19 -18 -19 -20 -22 -23 -21 -20 -18 -16 -19 -22 -24 -24 -23 -22 -23 -24 -25 -25 -24 -23 -21 -20 -20 -21 -22 -22 -22 -21 -21 -20 -20 -18 -17 -14 -12 -11 -13 -14 -13 -11 -12 -14 -17 -20 -22 -22 -20 -17 -13 -11 -11 -11 -10 -8 -8 -11 -16 -21 -22 -22 -21 -21 -23 -25 -26 -27 -27 -28 -28 -29 -31 -33 -35 -37 -37 -35 -32 -30 -29 -28 -27 -26 -24 -20 -18 -18 -23 -27 -31 -32 -30 -24 -19 -19 -21 -22 -20 -17 -15 -15 -17 -25 -35 -41 -41 -36 -32 -34 -37 -39 -38 -33 -27 -19 -12 -10 -14 -7 -4 -6 -11 -15 -16 -14 -12 -13 -13 -13 -13 -13 -13 -13 -14 -14 -13 -12 -12 -11 -10 -11 -10 -9 -7 -6 -5 -4 -2 -2 -4 -9 -8 -4 -2 -3 -4 -6 -8 -9 -8 -9 -8 -7 -6 -6 -6 -8 -11 -14 -12 -8 -8 -8 -8 -7 -7 -7 -8 -9 -9 -9 -10 -11 -12 -13 -11 -10 -10 -10 -10 -9 -9 -10 -10 -10 -12 -14 -18 -21 -24 -25 -24 -22 -18 -16 -13 -11 -10 -10 -10 -11 -11 -11 -11 -10 -8 -7 -7 -7 -7 -6 -6 -7 -8 -8 -8 -8 -9 -10 -10 -10 -11 -12 -13 -15 -16 -18 -20 -21 -21 -20 -17 -14 -12 -10 -8 -6 -5 -5 -7 -8 -11 -13 -14 -16 -16 -15 -12 -9 -7 -7 -7 -10 -14 -18 -20 -20 -17 -12 -5 1 5 7 6 3 1 -1 -4 -6 -11 -15 -19 -20 -19 -15 -9 -3 2 4 2 -2 -5 -9 -12 -15 -18 -20 -20 -19 -17 -17 -16 -16 -16 -15 -15 -15 -15 -16 -19 -20 -22 -22 -23 -25 -25 -24 -23 -23 -22 -20 -20 -20 -22 -20 -15 -8 -1 5 9 11 10 8 7 4 -1 -6 -11 -13 -16 -19 -21 -22 -20 -18 -15 -14 -13 -13 -14 -15 -16 -17 -18 -20 -24 -28 -29 -28 -26 -25 -26 -26 -26 -25 -25 -24 -23 -24 -24 -23 -23 -22 -22 -23 -23 -23 -21 -19 -17 -16 -14 -13 -13 -14 -15 -14 -12 -9 -9 -10 -12 -15 -17 -17 -17 -18 -19 -22 -25 -27 -29 -28 -27 -24 -20 -18 -17 -17 -17 -17 -18 -19 -19 -19 -21 -23 -23 -22 -20 -17 -17 -20 -23 -24 -23 -22 -22 -23 -23 -24 -25 -25 -24 -22 -21 -22 -23 -23 -23 -22 -21 -20 -20 -20 -19 -18 -14 -12 -11 -14 -16 -15 -14 -14 -14 -17 -21 -24 -23 -20 -15 -12 -11 -12 -12 -10 -9 -9 -12 -18 -23 -24 -23 -22 -22 -24 -26 -27 -27 -26 -25 -26 -28 -32 -36 -38 -38 -37 -34 -32 -30 -29 -28 -25 -23 -21 -19 -16 -18 -24 -29 -31 -29 -24 -18 -17 -19 -22 -20 -19 -19 -18 -19 -26 -38 -47 -51 -47 -39 -36 -39 -43 -42 -37 -31 -25 -19 -14 -16 -11 -6 -6 -10 -14 -16 -16 -14 -11 -11 -11 -11 -13 -13 -12 -11 -11 -11 -10 -9 -9 -8 -8 -7 -5 -4 -3 -2 -2 -2 -3 -5 -9 -10 -10 -11 -13 -14 -14 -13 -13 -13 -13 -13 -11 -9 -8 -8 -8 -10 -12 -13 -10 -9 -8 -9 -8 -8 -8 -8 -8 -9 -9 -9 -10 -10 -11 -11 -10 -9 -9 -10 -9 -9 -8 -8 -7 -7 -8 -11 -13 -17 -20 -22 -22 -21 -19 -17 -14 -12 -10 -10 -11 -12 -13 -15 -15 -14 -13 -11 -9 -6 -4 -3 -4 -5 -5 -4 -4 -4 -3 -3 -3 -3 -4 -5 -6 -9 -11 -14 -17 -20 -21 -21 -20 -18 -16 -14 -11 -9 -8 -8 -8 -8 -10 -12 -14 -16 -17 -17 -16 -13 -10 -7 -6 -8 -12 -16 -19 -19 -20 -15 -10 -4 1 3 4 3 2 2 1 -2 -6 -11 -15 -19 -20 -18 -14 -7 -1 2 2 1 -2 -5 -9 -13 -16 -18 -19 -18 -18 -18 -17 -17 -16 -15 -15 -16 -16 -17 -18 -19 -22 -23 -24 -25 -26 -27 -25 -22 -20 -19 -20 -23 -24 -23 -19 -14 -7 -1 3 6 8 10 9 6 1 -4 -9 -14 -18 -20 -22 -22 -21 -19 -17 -16 -16 -16 -17 -18 -18 -18 -20 -23 -28 -32 -33 -31 -28 -26 -25 -25 -24 -24 -23 -23 -23 -23 -22 -22 -22 -23 -23 -23 -23 -22 -21 -20 -19 -17 -15 -14 -14 -14 -14 -14 -11 -9 -9 -10 -12 -14 -16 -18 -19 -19 -22 -25 -28 -31 -31 -31 -29 -26 -22 -21 -19 -19 -18 -17 -17 -17 -18 -20 -22 -23 -23 -23 -20 -18 -18 -21 -23 -24 -23 -22 -22 -22 -23 -23 -24 -24 -23 -22 -22 -23 -24 -24 -23 -22 -20 -20 -20 -21 -20 -17 -14 -12 -12 -15 -16 -17 -15 -13 -14 -18 -22 -25 -23 -19 -14 -12 -11 -12 -12 -10 -9 -10 -15 -20 -24 -24 -22 -21 -23 -25 -27 -27 -26 -25 -25 -27 -32 -37 -39 -38 -36 -34 -33 -32 -31 -30 -27 -23 -22 -21 -18 -18 -23 -27 -29 -29 -26 -21 -17 -17 -21 -23 -20 -19 -19 -18 -23 -36 -51 -61 -60 -45 -37 -37 -42 -45 -41 -35 -30 -25 -19 -17 -14 -11 -8 -9 -13 -16 -17 -15 -10 -10 -10 -12 -14 -13 -11 -10 -10 -9 -9 -8 -8 -8 -8 -7 -6 -5 -5 -4 -5 -6 -8 -11 -12 -13 -14 -15 -15 -14 -14 -14 -14 -13 -13 -15 -16 -16 -12 -9 -9 -10 -11 -9 -8 -8 -7 -7 -6 -6 -6 -5 -6 -6 -6 -7 -8 -9 -10 -10 -9 -9 -9 -9 -8 -7 -6 -6 -5 -5 -5 -6 -8 -11 -14 -16 -17 -18 -18 -16 -15 -12 -10 -9 -9 -10 -12 -14 -16 -18 -19 -19 -17 -15 -11 -8 -6 -5 -4 -2 0 2 3 4 5 5 4 3 3 1 -1 -4 -7 -11 -15 -17 -18 -18 -18 -17 -15 -13 -12 -12 -11 -11 -12 -11 -11 -12 -13 -15 -16 -17 -16 -14 -12 -10 -10 -10 -10 -12 -17 -18 -17 -14 -9 -6 -2 -0 1 2 3 3 1 -1 -6 -10 -16 -19 -20 -18 -11 -4 0 3 3 1 -3 -7 -11 -14 -16 -17 -18 -19 -19 -18 -17 -16 -16 -18 -18 -18 -18 -19 -22 -24 -26 -25 -25 -25 -23 -21 -19 -18 -18 -19 -19 -21 -22 -22 -19 -15 -9 -2 4 8 10 10 7 2 -3 -8 -13 -17 -21 -24 -24 -22 -20 -18 -18 -18 -17 -17 -18 -18 -19 -21 -24 -29 -32 -32 -30 -27 -25 -24 -23 -23 -23 -22 -22 -22 -22 -22 -23 -24 -24 -24 -23 -22 -22 -21 -20 -19 -19 -18 -16 -15 -13 -14 -14 -13 -12 -11 -11 -12 -15 -18 -20 -21 -22 -25 -29 -32 -34 -34 -32 -30 -26 -23 -21 -21 -21 -20 -20 -19 -19 -20 -21 -22 -23 -24 -24 -21 -19 -19 -22 -24 -24 -23 -23 -22 -22 -22 -22 -22 -23 -23 -22 -23 -24 -25 -25 -23 -21 -20 -20 -22 -22 -21 -18 -14 -12 -13 -15 -16 -16 -14 -14 -16 -20 -23 -25 -22 -17 -13 -11 -11 -12 -12 -11 -9 -11 -15 -20 -23 -22 -21 -21 -23 -25 -27 -27 -27 -27 -29 -33 -37 -38 -37 -36 -34 -32 -31 -31 -29 -28 -24 -23 -23 -22 -19 -22 -24 -27 -28 -28 -24 -19 -15 -15 -21 -21 -21 -21 -19 -20 -32 -50 -67 -72 -53 -39 -34 -38 -43 -42 -38 -33 -28 -23 -19 -17 -15 -12 -11 -13 -16 -18 -17 -10 -10 -11 -13 -15 -13 -12 -11 -11 -11 -10 -10 -10 -10 -9 -9 -10 -10 -11 -11 -12 -13 -14 -14 -14 -14 -14 -13 -12 -11 -11 -11 -11 -11 -11 -13 -15 -15 -12 -10 -9 -9 -8 -7 -6 -6 -6 -6 -5 -5 -4 -4 -4 -5 -5 -6 -7 -8 -9 -9 -8 -8 -8 -8 -7 -6 -6 -5 -5 -5 -5 -5 -6 -7 -8 -9 -11 -12 -14 -14 -13 -12 -10 -8 -7 -7 -9 -10 -13 -17 -19 -21 -22 -22 -19 -15 -12 -10 -7 -5 -2 2 4 6 8 10 10 11 11 10 9 7 4 0 -5 -8 -10 -11 -14 -16 -16 -16 -16 -15 -14 -14 -16 -17 -16 -14 -12 -12 -13 -15 -16 -16 -15 -14 -13 -13 -12 -11 -13 -14 -15 -16 -15 -13 -11 -9 -7 -5 -3 -0 2 3 3 0 -5 -12 -18 -21 -19 -13 -7 -2 3 4 2 -1 -5 -9 -12 -14 -16 -18 -19 -19 -18 -17 -17 -19 -19 -19 -19 -19 -21 -23 -26 -27 -26 -24 -23 -22 -20 -19 -19 -18 -18 -18 -19 -21 -22 -23 -21 -17 -11 -3 3 7 7 5 5 4 0 -7 -14 -19 -21 -22 -20 -19 -19 -19 -19 -18 -18 -17 -17 -19 -21 -24 -28 -30 -31 -29 -26 -25 -24 -23 -23 -21 -21 -21 -20 -21 -23 -24 -25 -25 -24 -23 -22 -21 -21 -20 -20 -19 -17 -15 -13 -14 -16 -17 -17 -15 -12 -11 -12 -14 -16 -18 -19 -22 -27 -32 -35 -36 -35 -33 -29 -27 -24 -23 -22 -21 -21 -20 -20 -18 -18 -19 -21 -23 -24 -23 -20 -19 -20 -22 -24 -24 -24 -23 -22 -21 -21 -21 -22 -22 -22 -22 -23 -24 -25 -24 -22 -21 -21 -23 -24 -23 -21 -18 -14 -13 -14 -16 -18 -17 -16 -16 -18 -20 -23 -23 -21 -17 -13 -11 -12 -13 -13 -11 -10 -12 -16 -20 -22 -21 -21 -21 -23 -26 -29 -29 -29 -30 -32 -35 -36 -36 -36 -34 -33 -31 -30 -29 -28 -25 -23 -23 -24 -21 -21 -22 -24 -28 -29 -26 -22 -16 -13 -16 -20 -23 -25 -24 -21 -28 -44 -66 -75 -57 -40 -32 -34 -38 -40 -38 -35 -30 -24 -21 -19 -18 -15 -14 -15 -18 -21 -20 -12 -12 -13 -13 -14 -13 -13 -14 -13 -13 -14 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -14 -14 -13 -12 -12 -11 -10 -9 -8 -9 -9 -9 -9 -8 -10 -11 -11 -10 -10 -9 -9 -8 -8 -7 -7 -7 -7 -6 -6 -6 -5 -4 -4 -5 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -6 -5 -5 -5 -6 -6 -6 -6 -6 -6 -7 -9 -10 -11 -11 -10 -9 -8 -7 -6 -6 -7 -9 -12 -15 -17 -20 -22 -21 -20 -18 -16 -13 -10 -8 -4 -1 2 6 9 12 13 14 15 15 13 10 8 5 2 0 -2 -5 -9 -13 -16 -18 -16 -15 -16 -17 -19 -19 -16 -14 -13 -13 -13 -14 -15 -15 -16 -16 -15 -13 -12 -11 -11 -12 -13 -13 -14 -15 -15 -14 -14 -12 -10 -7 -3 0 3 2 -1 -7 -13 -17 -17 -14 -10 -5 -0 2 2 0 -3 -6 -9 -12 -15 -17 -18 -18 -18 -18 -19 -18 -19 -20 -20 -21 -22 -25 -27 -28 -27 -24 -22 -20 -19 -20 -20 -19 -18 -17 -18 -20 -22 -24 -24 -22 -17 -10 -2 7 11 14 13 10 5 -3 -9 -14 -17 -19 -19 -19 -20 -21 -20 -19 -18 -17 -17 -18 -20 -24 -27 -29 -30 -28 -26 -25 -24 -24 -23 -22 -22 -20 -20 -21 -23 -25 -25 -24 -23 -23 -23 -22 -22 -22 -21 -18 -15 -12 -13 -14 -16 -18 -18 -16 -14 -12 -13 -15 -18 -19 -21 -26 -30 -35 -37 -37 -37 -34 -31 -27 -24 -22 -22 -22 -22 -22 -19 -17 -16 -17 -20 -24 -25 -23 -21 -19 -20 -23 -24 -24 -24 -23 -22 -20 -20 -20 -21 -21 -21 -21 -22 -23 -23 -23 -22 -21 -23 -24 -24 -23 -21 -17 -14 -13 -15 -18 -19 -18 -17 -16 -16 -19 -21 -23 -22 -17 -13 -11 -12 -14 -14 -12 -11 -13 -17 -21 -22 -21 -20 -22 -25 -27 -28 -28 -29 -30 -32 -34 -35 -36 -35 -34 -33 -31 -29 -27 -25 -23 -22 -24 -23 -21 -20 -22 -26 -28 -27 -23 -18 -14 -13 -16 -22 -26 -27 -23 -24 -36 -58 -68 -53 -38 -30 -32 -35 -38 -38 -35 -31 -25 -22 -21 -19 -17 -16 -18 -22 -26 -25 -14 -14 -14 -14 -15 -15 -15 -15 -15 -14 -15 -15 -14 -14 -14 -14 -13 -13 -13 -13 -12 -12 -12 -11 -10 -9 -9 -9 -8 -8 -8 -9 -9 -8 -7 -8 -8 -9 -9 -9 -9 -9 -8 -8 -8 -9 -9 -9 -8 -7 -7 -6 -4 -4 -4 -5 -5 -5 -4 -5 -5 -5 -6 -6 -6 -6 -5 -5 -5 -5 -6 -6 -7 -6 -6 -6 -7 -8 -8 -8 -8 -8 -8 -8 -7 -6 -6 -6 -6 -7 -9 -11 -14 -16 -18 -20 -20 -20 -19 -17 -15 -13 -10 -7 -3 1 5 9 11 13 14 14 13 12 11 10 9 7 5 1 -5 -11 -16 -17 -17 -16 -16 -17 -17 -17 -17 -17 -16 -14 -13 -13 -14 -15 -16 -16 -15 -14 -13 -12 -12 -12 -12 -13 -14 -15 -16 -18 -18 -18 -16 -13 -10 -5 -1 1 -0 -4 -9 -13 -14 -14 -12 -8 -3 0 2 1 0 -2 -6 -11 -13 -14 -16 -17 -18 -19 -18 -19 -20 -22 -23 -23 -24 -26 -27 -27 -27 -26 -24 -21 -21 -21 -21 -20 -18 -18 -20 -21 -23 -25 -27 -26 -23 -17 -9 -1 6 9 8 3 -6 -11 -14 -17 -18 -19 -20 -21 -22 -22 -22 -20 -18 -17 -17 -20 -22 -23 -24 -26 -27 -27 -27 -26 -26 -26 -25 -24 -21 -21 -20 -21 -24 -25 -25 -24 -24 -25 -25 -24 -24 -23 -21 -18 -15 -13 -13 -14 -17 -18 -18 -17 -15 -14 -15 -16 -18 -21 -25 -29 -31 -34 -38 -41 -39 -35 -31 -27 -23 -22 -22 -23 -23 -22 -19 -18 -18 -18 -22 -24 -24 -23 -20 -20 -22 -24 -25 -25 -24 -23 -21 -20 -19 -20 -20 -21 -21 -22 -23 -24 -23 -22 -21 -23 -23 -24 -24 -23 -21 -17 -14 -13 -16 -19 -20 -19 -17 -15 -16 -18 -21 -21 -18 -14 -12 -11 -13 -14 -13 -12 -12 -15 -20 -22 -21 -20 -20 -26 -29 -30 -30 -30 -31 -32 -33 -35 -37 -37 -36 -35 -34 -31 -28 -26 -24 -22 -23 -25 -22 -19 -18 -23 -26 -27 -24 -20 -16 -12 -12 -16 -22 -26 -26 -24 -26 -45 -54 -44 -33 -28 -31 -34 -36 -37 -36 -32 -27 -24 -21 -19 -17 -16 -19 -25 -30 -31 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -13 -13 -13 -13 -12 -12 -11 -11 -10 -10 -10 -10 -9 -9 -8 -8 -8 -8 -8 -9 -9 -8 -8 -7 -7 -7 -8 -8 -8 -8 -8 -8 -8 -9 -9 -9 -8 -6 -5 -4 -3 -2 -2 -2 -3 -3 -2 -2 -2 -2 -2 -2 -3 -3 -3 -3 -3 -4 -4 -5 -5 -6 -7 -7 -7 -7 -7 -6 -6 -6 -6 -6 -6 -6 -5 -4 -4 -5 -6 -7 -9 -12 -14 -15 -17 -19 -21 -20 -21 -21 -20 -19 -15 -11 -7 -3 1 4 6 9 11 11 12 12 14 14 13 11 6 -0 -9 -13 -15 -14 -13 -13 -15 -16 -17 -18 -18 -16 -15 -14 -14 -14 -15 -15 -15 -15 -14 -14 -13 -13 -12 -13 -14 -15 -16 -18 -19 -21 -22 -21 -19 -16 -11 -7 -3 -1 -2 -5 -9 -12 -14 -12 -9 -5 -1 2 3 2 1 -2 -5 -8 -13 -15 -17 -18 -18 -19 -21 -22 -24 -25 -25 -24 -24 -25 -28 -30 -28 -24 -21 -21 -21 -21 -21 -21 -23 -23 -23 -23 -23 -25 -26 -25 -23 -16 -9 -3 1 3 -0 -6 -12 -15 -15 -17 -20 -22 -23 -23 -22 -20 -17 -16 -17 -19 -21 -22 -22 -23 -25 -27 -29 -29 -29 -29 -29 -27 -24 -23 -20 -20 -22 -24 -24 -25 -27 -30 -32 -30 -27 -25 -23 -22 -18 -16 -14 -14 -16 -18 -19 -19 -18 -17 -16 -16 -17 -19 -20 -23 -26 -31 -38 -41 -42 -39 -35 -31 -25 -23 -22 -23 -25 -24 -22 -21 -20 -18 -20 -22 -24 -24 -22 -21 -21 -23 -25 -25 -24 -24 -22 -21 -20 -19 -19 -20 -20 -21 -22 -22 -22 -21 -22 -23 -24 -24 -24 -25 -23 -21 -17 -13 -14 -17 -20 -21 -19 -17 -16 -17 -19 -21 -21 -17 -13 -10 -10 -13 -14 -14 -14 -14 -18 -21 -22 -21 -21 -25 -29 -31 -31 -32 -33 -35 -36 -36 -38 -39 -39 -38 -36 -32 -30 -28 -26 -23 -22 -25 -23 -19 -15 -20 -24 -26 -25 -22 -18 -14 -11 -10 -13 -18 -24 -25 -22 -27 -35 -33 -27 -27 -30 -33 -35 -36 -36 -34 -30 -26 -23 -21 -19 -17 -19 -24 -32 -35 -13 -13 -13 -13 -13 -13 -13 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -11 -10 -10 -10 -10 -9 -10 -10 -10 -9 -8 -8 -8 -9 -9 -9 -9 -9 -8 -8 -8 -8 -8 -8 -7 -7 -7 -7 -7 -7 -7 -6 -4 -3 -1 -0 1 1 1 1 1 1 1 1 1 1 1 0 -0 -1 -1 -2 -2 -2 -3 -4 -5 -6 -5 -5 -5 -5 -4 -3 -3 -3 -2 -2 -2 -2 -2 -2 -3 -5 -6 -6 -8 -9 -11 -13 -15 -18 -19 -21 -22 -23 -24 -24 -23 -21 -17 -13 -10 -6 -2 1 4 6 8 10 13 15 15 14 10 4 -3 -6 -8 -8 -9 -11 -13 -15 -17 -18 -18 -17 -17 -15 -14 -14 -13 -13 -13 -14 -13 -14 -14 -13 -14 -14 -15 -16 -17 -19 -22 -24 -25 -25 -23 -20 -16 -12 -7 -4 -3 -5 -8 -11 -12 -12 -10 -7 -4 -0 1 2 2 2 -0 -6 -12 -17 -19 -18 -18 -20 -22 -24 -25 -25 -24 -23 -23 -25 -27 -27 -24 -21 -21 -21 -21 -23 -25 -26 -25 -24 -22 -21 -22 -24 -27 -30 -27 -23 -17 -12 -8 -4 -3 -5 -9 -13 -15 -16 -18 -20 -19 -18 -17 -17 -17 -16 -18 -20 -21 -21 -21 -23 -27 -30 -31 -32 -32 -32 -32 -29 -28 -25 -23 -23 -24 -25 -26 -29 -33 -34 -32 -29 -27 -25 -24 -21 -19 -17 -15 -15 -17 -18 -19 -20 -19 -18 -16 -16 -18 -19 -20 -22 -26 -33 -39 -43 -42 -38 -34 -28 -25 -23 -23 -26 -26 -25 -23 -21 -19 -19 -21 -23 -25 -24 -23 -22 -22 -25 -27 -26 -25 -24 -22 -21 -20 -19 -18 -18 -19 -20 -20 -20 -20 -21 -23 -25 -26 -26 -26 -26 -24 -21 -16 -15 -16 -19 -21 -22 -20 -18 -16 -16 -19 -21 -20 -16 -11 -9 -11 -14 -16 -16 -15 -17 -21 -23 -23 -22 -24 -26 -29 -31 -33 -33 -34 -36 -38 -40 -41 -41 -40 -37 -33 -31 -29 -27 -24 -22 -24 -24 -20 -16 -19 -23 -25 -25 -23 -19 -16 -12 -9 -8 -10 -16 -23 -27 -17 -19 -21 -21 -26 -30 -33 -35 -37 -38 -37 -33 -29 -26 -23 -22 -20 -20 -24 -31 -37 -12 -12 -13 -13 -12 -12 -12 -12 -11 -12 -12 -12 -12 -12 -12 -12 -11 -11 -10 -10 -10 -10 -9 -10 -12 -13 -12 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -9 -8 -8 -7 -7 -7 -6 -6 -5 -5 -4 -3 -1 0 1 2 3 3 4 4 3 1 1 1 2 1 0 0 -0 -1 -3 -3 -4 -4 -5 -5 -6 -5 -5 -4 -4 -4 -3 -1 2 2 1 1 2 2 1 -1 -2 -2 -4 -5 -6 -7 -8 -8 -9 -11 -12 -15 -16 -19 -20 -22 -22 -22 -20 -18 -17 -14 -11 -8 -4 -1 3 6 9 13 15 16 13 9 5 1 -2 -4 -6 -8 -11 -13 -15 -16 -18 -20 -19 -17 -15 -14 -13 -12 -12 -13 -13 -13 -13 -14 -14 -15 -16 -17 -18 -21 -24 -26 -27 -26 -25 -23 -20 -16 -11 -8 -7 -7 -9 -10 -12 -12 -11 -9 -6 -4 -1 1 4 4 0 -5 -10 -15 -16 -17 -20 -22 -25 -26 -24 -23 -21 -21 -22 -23 -24 -24 -22 -20 -19 -20 -23 -25 -26 -26 -25 -23 -22 -22 -24 -27 -30 -31 -30 -28 -24 -21 -15 -11 -10 -11 -13 -13 -16 -18 -20 -17 -16 -15 -16 -17 -17 -18 -19 -19 -19 -21 -23 -27 -30 -31 -32 -34 -36 -37 -35 -33 -30 -28 -27 -28 -28 -27 -28 -33 -36 -33 -29 -26 -24 -24 -24 -23 -21 -19 -16 -16 -16 -17 -18 -20 -20 -19 -18 -17 -17 -17 -19 -22 -26 -33 -40 -44 -44 -41 -34 -28 -24 -23 -25 -25 -25 -24 -22 -21 -20 -20 -22 -24 -26 -25 -23 -22 -23 -25 -25 -25 -24 -24 -23 -21 -19 -18 -17 -17 -17 -18 -18 -19 -20 -23 -25 -26 -27 -28 -28 -27 -25 -21 -18 -16 -16 -19 -21 -21 -19 -17 -15 -17 -20 -21 -19 -14 -9 -8 -11 -14 -17 -17 -17 -19 -23 -25 -23 -23 -24 -28 -31 -33 -33 -34 -35 -37 -39 -42 -43 -42 -39 -35 -32 -30 -28 -25 -22 -23 -23 -21 -16 -18 -22 -25 -25 -23 -21 -18 -14 -11 -8 -8 -11 -17 -27 -17 -14 -14 -18 -25 -29 -33 -36 -38 -41 -41 -38 -34 -30 -27 -25 -23 -22 -26 -33 -40 -12 -13 -13 -13 -12 -12 -12 -12 -11 -11 -12 -12 -12 -12 -12 -12 -12 -11 -11 -10 -10 -10 -10 -10 -11 -13 -15 -17 -18 -14 -11 -11 -11 -12 -11 -11 -12 -12 -12 -9 -7 -7 -8 -8 -6 -5 -4 -4 -2 -1 -0 -1 -1 -1 -0 1 2 2 1 1 0 0 0 0 -0 -1 -1 -2 -3 -4 -6 -7 -8 -8 -8 -8 -8 -7 -7 -7 -6 -4 -2 -0 -0 -0 0 0 -0 -1 -1 -1 -2 -3 -4 -4 -3 -3 -2 -2 -3 -5 -6 -8 -9 -12 -14 -16 -16 -16 -16 -16 -16 -15 -13 -10 -7 -4 -0 4 9 13 15 14 12 8 5 2 -1 -4 -6 -7 -9 -11 -14 -16 -16 -16 -16 -17 -18 -17 -15 -12 -11 -11 -12 -12 -12 -13 -14 -15 -17 -20 -23 -26 -27 -27 -26 -25 -23 -22 -18 -15 -12 -10 -9 -10 -11 -12 -12 -12 -12 -10 -7 -4 -0 2 2 -0 -4 -8 -11 -14 -16 -20 -25 -26 -25 -22 -20 -21 -23 -25 -26 -25 -22 -20 -19 -19 -20 -21 -23 -26 -27 -27 -26 -26 -27 -27 -28 -29 -30 -31 -30 -28 -25 -22 -19 -16 -13 -12 -13 -15 -17 -17 -16 -15 -15 -16 -17 -19 -21 -22 -22 -24 -26 -29 -30 -28 -30 -35 -38 -40 -40 -37 -34 -32 -31 -30 -29 -27 -27 -32 -35 -34 -32 -29 -28 -26 -25 -24 -24 -24 -22 -20 -18 -17 -18 -20 -22 -22 -20 -17 -15 -15 -15 -17 -19 -25 -32 -39 -44 -43 -38 -32 -27 -24 -26 -25 -26 -26 -24 -23 -21 -20 -21 -23 -26 -26 -25 -23 -22 -23 -24 -25 -25 -25 -24 -23 -21 -18 -16 -16 -16 -16 -16 -17 -18 -21 -24 -26 -28 -29 -29 -28 -26 -23 -21 -18 -15 -14 -16 -18 -18 -17 -16 -16 -19 -21 -22 -19 -13 -8 -8 -12 -16 -18 -19 -21 -22 -22 -22 -22 -24 -27 -29 -31 -33 -34 -35 -35 -38 -41 -43 -42 -39 -36 -33 -32 -30 -26 -23 -22 -22 -20 -15 -16 -20 -24 -25 -24 -23 -20 -17 -13 -11 -10 -11 -13 -21 -20 -16 -13 -18 -26 -31 -36 -39 -43 -46 -45 -42 -38 -34 -30 -28 -26 -26 -29 -37 -44 -12 -13 -13 -13 -12 -12 -12 -12 -11 -11 -12 -12 -12 -12 -12 -12 -11 -11 -11 -11 -11 -10 -10 -10 -11 -13 -16 -18 -18 -13 -11 -11 -11 -10 -9 -9 -9 -9 -8 -7 -6 -6 -5 -5 -3 -2 -2 -2 -2 -1 -0 -1 -1 -2 -2 -2 -2 -1 -2 -2 -2 -2 -3 -3 -2 -2 -2 -3 -4 -5 -6 -8 -8 -9 -9 -9 -9 -9 -9 -9 -8 -7 -6 -5 -4 -4 -5 -5 -5 -4 -3 -4 -5 -5 -6 -6 -5 -3 -0 1 1 0 -1 -1 -2 -3 -5 -7 -9 -10 -12 -13 -14 -15 -15 -15 -14 -12 -9 -5 -1 4 8 11 12 12 11 9 5 2 -1 -3 -4 -5 -8 -12 -15 -15 -14 -14 -16 -17 -18 -16 -15 -13 -11 -11 -11 -11 -12 -14 -16 -19 -22 -25 -29 -29 -28 -27 -25 -24 -22 -20 -18 -15 -13 -12 -12 -12 -12 -13 -14 -14 -13 -11 -8 -5 -3 -1 -1 -2 -4 -7 -10 -15 -21 -24 -24 -22 -20 -20 -24 -27 -27 -24 -20 -19 -19 -19 -20 -21 -23 -26 -29 -31 -31 -30 -29 -28 -27 -28 -28 -29 -30 -30 -30 -29 -26 -22 -18 -14 -13 -14 -15 -17 -16 -16 -17 -18 -19 -21 -22 -24 -25 -26 -28 -29 -28 -25 -27 -32 -38 -41 -42 -40 -39 -37 -35 -32 -29 -28 -28 -31 -34 -34 -31 -29 -27 -26 -25 -25 -24 -25 -23 -23 -22 -22 -21 -21 -21 -21 -21 -18 -16 -14 -13 -13 -13 -17 -25 -33 -40 -42 -40 -36 -31 -27 -27 -26 -26 -26 -25 -23 -21 -21 -21 -22 -25 -26 -25 -24 -22 -22 -23 -24 -25 -26 -26 -24 -22 -20 -17 -16 -15 -15 -15 -15 -16 -19 -22 -25 -27 -29 -29 -28 -27 -25 -23 -21 -18 -14 -13 -14 -16 -18 -17 -16 -18 -21 -23 -23 -18 -12 -9 -9 -13 -18 -20 -22 -22 -23 -25 -25 -26 -25 -26 -28 -31 -33 -32 -33 -36 -39 -42 -42 -41 -38 -36 -34 -32 -26 -23 -22 -22 -20 -15 -14 -17 -22 -24 -25 -24 -22 -19 -16 -14 -13 -13 -14 -17 -22 -20 -16 -20 -29 -34 -38 -41 -45 -47 -47 -45 -41 -35 -31 -28 -27 -27 -29 -36 -44 -12 -13 -13 -13 -12 -13 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -12 -12 -13 -12 -13 -13 -14 -15 -17 -18 -18 -16 -13 -11 -10 -8 -7 -7 -7 -6 -5 -5 -5 -5 -4 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -2 -3 -4 -4 -4 -5 -6 -7 -8 -8 -8 -8 -8 -9 -10 -10 -9 -8 -7 -7 -6 -6 -7 -8 -8 -7 -7 -8 -9 -10 -11 -11 -10 -8 -5 -3 -2 -2 -2 -2 -2 -2 -3 -3 -5 -7 -8 -10 -11 -12 -13 -14 -15 -15 -14 -13 -10 -6 -2 3 7 10 13 14 12 8 3 -2 -3 -2 -2 -5 -9 -13 -13 -13 -13 -16 -18 -18 -16 -14 -13 -12 -11 -10 -11 -13 -15 -17 -19 -23 -27 -30 -30 -29 -27 -24 -22 -22 -21 -19 -17 -15 -14 -14 -14 -14 -14 -15 -15 -15 -14 -13 -10 -8 -5 -3 -1 -2 -4 -8 -13 -16 -18 -17 -16 -18 -23 -26 -26 -24 -20 -19 -19 -20 -22 -23 -25 -26 -27 -29 -29 -29 -29 -29 -29 -30 -30 -30 -30 -31 -32 -32 -31 -28 -25 -21 -17 -15 -14 -15 -15 -16 -17 -19 -20 -21 -22 -24 -26 -25 -26 -26 -26 -25 -26 -30 -35 -39 -42 -42 -42 -41 -39 -36 -32 -29 -28 -28 -29 -29 -28 -28 -27 -26 -25 -25 -25 -26 -26 -26 -25 -24 -23 -22 -20 -20 -21 -20 -18 -16 -13 -11 -11 -13 -17 -24 -31 -37 -40 -39 -35 -31 -30 -27 -26 -26 -25 -24 -23 -22 -21 -21 -24 -26 -26 -24 -22 -21 -21 -22 -25 -27 -27 -26 -24 -21 -18 -16 -15 -15 -15 -14 -14 -16 -19 -23 -26 -29 -29 -29 -28 -27 -25 -23 -20 -17 -14 -13 -13 -15 -17 -17 -17 -19 -23 -25 -23 -18 -12 -10 -11 -16 -21 -24 -26 -27 -26 -25 -24 -24 -25 -27 -29 -30 -28 -28 -31 -35 -39 -43 -42 -40 -37 -35 -33 -27 -23 -21 -21 -20 -15 -13 -14 -18 -22 -24 -25 -23 -21 -19 -17 -16 -16 -17 -18 -22 -23 -21 -23 -30 -34 -36 -38 -42 -45 -46 -45 -40 -34 -31 -28 -27 -27 -27 -33 -41 -11 -13 -13 -13 -12 -12 -12 -12 -11 -10 -10 -10 -11 -11 -12 -12 -12 -13 -13 -14 -14 -14 -14 -14 -14 -14 -14 -15 -15 -15 -14 -12 -11 -11 -11 -9 -8 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -7 -6 -6 -7 -7 -5 -4 -4 -3 -2 -3 -3 -2 -2 -2 -2 -4 -5 -5 -5 -6 -7 -7 -6 -6 -7 -8 -9 -10 -10 -10 -9 -8 -7 -7 -7 -7 -7 -8 -8 -9 -10 -11 -12 -13 -14 -15 -14 -12 -11 -9 -7 -6 -6 -7 -7 -7 -7 -7 -7 -8 -8 -9 -10 -11 -11 -12 -14 -15 -15 -15 -14 -12 -8 -4 1 6 9 11 11 8 4 1 1 1 1 -1 -4 -5 -6 -8 -11 -13 -15 -15 -16 -16 -16 -14 -13 -13 -13 -14 -14 -15 -17 -22 -26 -30 -31 -31 -28 -25 -24 -22 -21 -19 -18 -17 -17 -18 -17 -17 -16 -15 -15 -16 -17 -17 -16 -15 -12 -8 -4 -2 -3 -6 -8 -9 -10 -10 -14 -18 -22 -22 -21 -18 -18 -19 -20 -22 -23 -24 -25 -26 -26 -26 -26 -27 -28 -29 -29 -29 -29 -30 -31 -33 -34 -34 -33 -30 -26 -22 -18 -16 -15 -14 -15 -17 -20 -22 -21 -20 -21 -23 -24 -25 -26 -28 -29 -29 -29 -31 -35 -39 -42 -42 -40 -38 -36 -32 -28 -24 -22 -21 -23 -25 -27 -28 -27 -27 -26 -26 -27 -28 -28 -27 -25 -23 -20 -18 -18 -19 -20 -21 -19 -16 -13 -12 -10 -11 -13 -19 -28 -35 -38 -37 -34 -32 -30 -28 -27 -24 -25 -24 -24 -23 -23 -23 -24 -24 -24 -22 -20 -20 -20 -23 -26 -28 -27 -26 -23 -20 -18 -16 -16 -15 -14 -14 -14 -16 -20 -25 -29 -31 -30 -29 -28 -27 -25 -22 -20 -17 -14 -12 -12 -15 -17 -18 -19 -21 -25 -26 -24 -18 -11 -10 -13 -19 -23 -26 -26 -26 -25 -26 -25 -26 -28 -29 -28 -24 -23 -26 -30 -36 -41 -42 -40 -37 -35 -32 -26 -22 -21 -21 -19 -16 -14 -13 -16 -21 -24 -25 -25 -23 -21 -20 -19 -19 -19 -19 -21 -24 -26 -25 -29 -32 -33 -34 -38 -42 -45 -45 -41 -37 -33 -29 -27 -26 -26 -31 -39 -11 -12 -13 -13 -13 -13 -13 -12 -12 -11 -11 -11 -12 -13 -13 -14 -14 -14 -14 -14 -14 -14 -14 -13 -13 -13 -13 -13 -13 -12 -12 -11 -12 -13 -13 -11 -10 -9 -8 -7 -7 -7 -8 -9 -9 -10 -10 -9 -9 -9 -9 -8 -8 -8 -8 -5 -3 -2 -1 -1 -1 -1 -0 -0 -0 -1 -2 -4 -5 -5 -6 -6 -7 -7 -7 -8 -9 -11 -11 -12 -11 -11 -9 -8 -7 -7 -7 -8 -8 -9 -10 -11 -12 -12 -13 -13 -14 -16 -15 -14 -12 -11 -10 -10 -11 -11 -12 -12 -11 -11 -10 -10 -10 -10 -11 -11 -11 -11 -12 -13 -15 -16 -17 -17 -15 -12 -8 -4 1 5 7 8 7 5 5 5 4 3 1 -1 -4 -6 -8 -10 -13 -14 -15 -16 -16 -16 -16 -15 -14 -14 -14 -15 -17 -21 -26 -29 -32 -31 -29 -27 -25 -23 -22 -20 -18 -18 -19 -20 -20 -20 -19 -17 -17 -18 -19 -20 -21 -22 -19 -14 -8 -4 -4 -4 -4 -4 -4 -7 -11 -14 -15 -15 -15 -16 -17 -20 -22 -24 -25 -26 -25 -24 -23 -24 -25 -26 -27 -28 -29 -29 -29 -30 -32 -35 -37 -37 -34 -31 -28 -25 -21 -19 -18 -17 -18 -20 -22 -22 -20 -19 -21 -23 -26 -30 -33 -33 -31 -29 -29 -31 -34 -37 -39 -40 -41 -40 -37 -33 -29 -23 -20 -20 -23 -26 -27 -27 -28 -29 -28 -29 -28 -28 -28 -27 -26 -23 -21 -19 -18 -19 -21 -21 -19 -17 -14 -12 -10 -10 -12 -20 -28 -35 -37 -36 -35 -33 -30 -28 -25 -25 -25 -26 -25 -25 -24 -22 -21 -21 -21 -20 -19 -19 -21 -25 -28 -29 -28 -25 -23 -20 -18 -16 -15 -15 -14 -14 -15 -17 -24 -29 -32 -32 -31 -30 -28 -26 -24 -22 -19 -16 -13 -11 -12 -15 -17 -19 -20 -23 -26 -27 -23 -15 -11 -12 -16 -20 -23 -23 -23 -24 -26 -27 -28 -28 -27 -26 -24 -23 -25 -28 -33 -37 -40 -41 -40 -38 -33 -27 -23 -21 -21 -20 -18 -16 -14 -16 -20 -24 -26 -25 -24 -23 -22 -21 -21 -21 -20 -21 -23 -28 -26 -27 -30 -32 -31 -34 -39 -43 -44 -42 -39 -35 -30 -28 -27 -26 -30 -37 -12 -12 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -13 -13 -13 -12 -12 -12 -12 -12 -12 -11 -11 -10 -10 -10 -11 -12 -13 -12 -11 -10 -9 -8 -8 -7 -8 -9 -9 -10 -10 -11 -10 -9 -9 -9 -8 -7 -7 -5 -3 -2 -1 -0 1 1 2 2 1 0 0 -1 -3 -5 -5 -6 -7 -8 -9 -10 -11 -13 -14 -15 -14 -14 -13 -12 -10 -9 -9 -9 -11 -11 -12 -14 -15 -16 -16 -14 -12 -12 -13 -12 -11 -10 -10 -10 -10 -11 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -12 -12 -12 -12 -12 -13 -15 -18 -19 -20 -19 -17 -13 -8 -3 2 5 7 7 7 7 5 4 2 1 -1 -4 -6 -8 -11 -12 -13 -15 -16 -17 -16 -16 -15 -15 -15 -15 -18 -21 -25 -29 -31 -31 -30 -28 -27 -25 -23 -20 -19 -19 -20 -22 -23 -23 -22 -21 -20 -19 -20 -23 -26 -27 -25 -20 -13 -9 -6 -4 -2 -0 -1 -3 -5 -6 -7 -9 -11 -14 -17 -21 -24 -25 -25 -23 -23 -22 -22 -22 -23 -24 -26 -27 -29 -29 -29 -31 -33 -35 -37 -34 -32 -31 -31 -29 -27 -24 -20 -18 -18 -21 -22 -21 -20 -21 -24 -27 -31 -35 -34 -32 -30 -28 -28 -30 -33 -36 -39 -42 -42 -40 -36 -32 -27 -22 -20 -20 -20 -22 -24 -26 -29 -30 -30 -28 -28 -28 -29 -29 -27 -24 -21 -19 -19 -21 -22 -22 -21 -18 -15 -13 -10 -11 -16 -23 -31 -36 -37 -36 -35 -33 -31 -27 -26 -26 -27 -26 -25 -24 -22 -21 -21 -21 -21 -20 -19 -19 -22 -26 -28 -29 -27 -24 -22 -19 -18 -16 -16 -16 -16 -15 -16 -21 -27 -32 -35 -34 -33 -30 -28 -26 -24 -22 -19 -16 -12 -11 -13 -15 -18 -18 -21 -25 -28 -28 -23 -16 -13 -14 -17 -19 -20 -21 -23 -26 -26 -27 -27 -28 -29 -28 -26 -25 -27 -31 -35 -39 -42 -43 -40 -34 -29 -24 -23 -22 -21 -20 -17 -14 -15 -20 -25 -28 -27 -26 -24 -23 -23 -23 -22 -21 -21 -23 -27 -25 -25 -28 -32 -31 -32 -36 -41 -43 -42 -39 -35 -30 -27 -28 -28 -29 -34 -11 -11 -11 -11 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -12 -11 -11 -10 -10 -10 -10 -10 -10 -10 -9 -9 -8 -8 -8 -8 -10 -11 -10 -10 -8 -7 -7 -7 -7 -8 -8 -9 -9 -8 -8 -8 -7 -6 -5 -6 -8 -9 -6 -2 -1 -0 0 1 1 1 1 0 -1 -2 -3 -4 -5 -6 -7 -9 -11 -13 -13 -14 -15 -16 -17 -17 -15 -14 -12 -11 -10 -10 -11 -13 -15 -18 -21 -23 -25 -25 -23 -20 -16 -14 -14 -13 -11 -9 -8 -7 -7 -6 -7 -8 -9 -10 -12 -13 -13 -14 -14 -15 -15 -15 -14 -13 -12 -11 -12 -13 -15 -17 -20 -21 -21 -19 -15 -9 -3 1 4 6 7 6 5 5 4 4 1 -2 -4 -6 -8 -9 -11 -13 -15 -16 -16 -17 -17 -17 -17 -17 -19 -22 -25 -28 -30 -31 -31 -30 -28 -26 -24 -22 -20 -20 -21 -23 -25 -26 -26 -25 -24 -22 -22 -25 -28 -29 -28 -25 -21 -17 -13 -8 -5 -2 -1 -2 -2 -1 -2 -5 -9 -14 -18 -20 -21 -21 -21 -22 -22 -22 -22 -21 -22 -23 -24 -26 -27 -28 -30 -32 -34 -36 -34 -33 -32 -32 -33 -32 -30 -28 -24 -20 -18 -17 -17 -20 -22 -25 -27 -29 -31 -32 -31 -29 -27 -26 -27 -29 -31 -35 -40 -42 -42 -39 -36 -30 -24 -20 -17 -16 -17 -19 -22 -25 -28 -29 -28 -28 -27 -29 -31 -30 -28 -25 -22 -21 -21 -21 -22 -22 -21 -20 -17 -15 -13 -12 -17 -24 -31 -34 -36 -36 -36 -35 -31 -28 -27 -26 -26 -25 -24 -22 -19 -19 -19 -20 -20 -20 -20 -21 -23 -26 -29 -28 -26 -23 -21 -20 -18 -17 -17 -18 -17 -17 -21 -25 -30 -33 -34 -33 -32 -29 -27 -25 -23 -21 -18 -16 -13 -12 -14 -16 -18 -20 -23 -27 -30 -30 -25 -19 -16 -14 -15 -17 -19 -21 -23 -24 -26 -29 -32 -34 -31 -27 -25 -25 -29 -34 -39 -42 -42 -39 -34 -30 -27 -25 -23 -22 -21 -19 -17 -17 -22 -28 -32 -30 -28 -26 -25 -25 -24 -22 -22 -22 -22 -24 -24 -24 -27 -31 -32 -32 -34 -37 -41 -41 -38 -34 -30 -27 -29 -29 -28 -30 -10 -10 -11 -11 -11 -11 -12 -12 -12 -12 -11 -11 -11 -11 -11 -11 -10 -9 -9 -8 -8 -8 -8 -8 -8 -8 -7 -7 -6 -5 -5 -6 -7 -8 -8 -8 -8 -7 -7 -8 -8 -8 -7 -8 -9 -8 -6 -4 -3 -2 -3 -5 -7 -9 -8 -6 -4 -3 -3 -4 -4 -4 -4 -4 -6 -7 -8 -9 -9 -10 -11 -11 -12 -12 -12 -13 -14 -14 -15 -15 -14 -13 -12 -12 -11 -10 -10 -11 -13 -17 -21 -26 -30 -32 -32 -30 -27 -23 -21 -20 -19 -16 -14 -11 -8 -6 -5 -5 -6 -6 -7 -7 -9 -10 -12 -14 -14 -15 -15 -15 -14 -13 -12 -12 -13 -14 -15 -18 -20 -21 -21 -20 -15 -10 -5 -0 3 5 5 5 4 4 2 -0 -2 -3 -4 -4 -5 -8 -10 -12 -14 -15 -17 -18 -18 -18 -19 -21 -23 -25 -28 -30 -32 -33 -30 -28 -27 -25 -23 -22 -22 -23 -25 -27 -29 -30 -29 -27 -25 -23 -24 -26 -28 -27 -25 -24 -22 -20 -17 -13 -9 -5 -2 0 0 -2 -5 -9 -14 -16 -17 -17 -18 -20 -21 -22 -23 -22 -21 -22 -23 -24 -25 -27 -30 -33 -35 -35 -34 -33 -32 -32 -33 -33 -33 -30 -26 -22 -20 -18 -17 -18 -23 -26 -28 -29 -27 -28 -27 -26 -24 -24 -25 -26 -29 -32 -36 -38 -39 -38 -35 -31 -26 -22 -18 -16 -15 -16 -18 -21 -24 -28 -29 -28 -27 -28 -30 -31 -31 -30 -27 -24 -22 -21 -21 -22 -22 -22 -21 -20 -17 -14 -15 -19 -23 -26 -29 -32 -36 -38 -36 -32 -28 -26 -25 -25 -24 -21 -18 -17 -18 -19 -19 -20 -21 -20 -21 -23 -25 -27 -27 -25 -24 -23 -21 -20 -19 -20 -20 -19 -20 -22 -25 -27 -29 -30 -30 -30 -29 -27 -25 -23 -21 -19 -16 -14 -13 -14 -17 -19 -22 -26 -30 -33 -30 -25 -18 -13 -13 -14 -15 -16 -19 -23 -27 -32 -36 -38 -35 -30 -26 -26 -30 -35 -39 -41 -40 -37 -34 -31 -29 -26 -25 -23 -22 -21 -19 -20 -23 -29 -33 -33 -30 -28 -26 -27 -25 -23 -22 -22 -21 -23 -23 -23 -24 -28 -31 -32 -32 -34 -38 -40 -38 -35 -30 -28 -30 -29 -28 -27 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -9 -9 -9 -9 -9 -8 -7 -7 -7 -6 -6 -5 -6 -6 -6 -6 -6 -5 -6 -7 -7 -8 -8 -8 -8 -9 -9 -8 -6 -5 -5 -5 -5 -4 -3 -3 -4 -6 -7 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -7 -8 -9 -10 -11 -11 -11 -11 -12 -12 -12 -11 -11 -12 -12 -11 -9 -9 -10 -10 -9 -8 -8 -7 -7 -7 -8 -11 -15 -20 -26 -31 -34 -35 -33 -30 -28 -27 -26 -25 -23 -20 -17 -14 -11 -9 -7 -6 -4 -4 -4 -6 -7 -9 -10 -11 -13 -14 -14 -15 -14 -14 -13 -13 -13 -15 -17 -20 -21 -22 -21 -19 -15 -10 -5 -1 2 3 3 4 3 2 1 0 1 1 -0 -3 -4 -7 -9 -11 -13 -15 -17 -18 -19 -21 -22 -24 -27 -30 -33 -34 -33 -31 -29 -28 -27 -25 -24 -24 -25 -27 -30 -33 -34 -33 -31 -27 -24 -23 -24 -25 -24 -24 -24 -24 -24 -22 -18 -15 -12 -9 -4 -2 -2 -3 -9 -12 -13 -13 -14 -17 -19 -21 -22 -22 -23 -23 -23 -23 -23 -26 -28 -31 -34 -34 -33 -31 -30 -31 -33 -34 -34 -33 -31 -27 -23 -20 -20 -22 -25 -28 -30 -30 -30 -28 -25 -22 -21 -22 -24 -26 -28 -30 -31 -33 -33 -33 -32 -31 -29 -26 -22 -18 -17 -16 -17 -18 -20 -24 -28 -30 -29 -28 -28 -30 -32 -33 -30 -28 -25 -22 -21 -21 -22 -23 -24 -24 -22 -19 -18 -18 -19 -18 -21 -27 -35 -39 -39 -34 -30 -27 -26 -26 -24 -22 -19 -18 -18 -18 -18 -19 -21 -20 -19 -19 -20 -24 -26 -27 -27 -27 -25 -23 -22 -21 -22 -22 -21 -21 -21 -23 -26 -28 -29 -30 -29 -28 -27 -25 -24 -23 -20 -17 -14 -14 -15 -17 -20 -24 -30 -34 -35 -31 -24 -15 -9 -8 -11 -14 -17 -22 -29 -35 -40 -41 -38 -33 -29 -29 -32 -36 -38 -39 -38 -35 -33 -32 -30 -28 -26 -24 -23 -22 -20 -19 -21 -24 -29 -30 -29 -27 -26 -26 -26 -24 -22 -22 -22 -22 -22 -22 -23 -26 -31 -32 -31 -31 -36 -39 -39 -36 -31 -30 -30 -29 -28 -25 -9 -9 -10 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -8 -8 -7 -6 -5 -4 -4 -4 -4 -5 -5 -5 -6 -8 -7 -7 -7 -7 -7 -7 -6 -6 -6 -6 -6 -4 -2 -1 -2 -3 -4 -5 -6 -8 -10 -11 -11 -11 -10 -9 -9 -9 -9 -8 -8 -8 -8 -8 -9 -9 -10 -11 -11 -11 -11 -11 -12 -13 -11 -10 -9 -7 -5 -6 -7 -8 -7 -6 -6 -5 -5 -4 -5 -6 -9 -12 -16 -22 -27 -31 -33 -32 -30 -29 -29 -30 -29 -27 -25 -23 -20 -18 -15 -12 -9 -6 -4 -3 -3 -4 -6 -8 -9 -10 -11 -13 -14 -14 -14 -14 -14 -14 -15 -16 -18 -20 -21 -21 -20 -18 -14 -10 -7 -3 0 3 2 0 -0 2 4 3 2 1 0 -0 -2 -4 -7 -10 -13 -15 -18 -21 -23 -25 -27 -29 -32 -34 -34 -33 -32 -31 -30 -29 -28 -27 -27 -27 -30 -33 -36 -37 -37 -34 -29 -24 -23 -23 -23 -22 -22 -24 -25 -24 -23 -22 -21 -20 -14 -10 -7 -3 -4 -6 -8 -10 -12 -13 -15 -17 -20 -21 -23 -23 -23 -22 -22 -24 -26 -27 -30 -31 -31 -29 -28 -29 -32 -33 -34 -34 -33 -30 -26 -24 -23 -23 -24 -27 -31 -33 -33 -28 -23 -19 -18 -20 -21 -22 -24 -26 -27 -28 -28 -29 -29 -30 -30 -28 -26 -22 -19 -17 -15 -15 -16 -20 -24 -28 -30 -30 -30 -31 -32 -34 -34 -32 -29 -25 -22 -21 -22 -24 -26 -27 -26 -24 -22 -19 -15 -14 -15 -20 -29 -35 -37 -36 -33 -31 -29 -27 -25 -23 -22 -20 -18 -17 -17 -18 -20 -20 -19 -18 -17 -21 -25 -28 -28 -28 -27 -25 -24 -23 -25 -25 -23 -21 -18 -19 -22 -25 -28 -29 -30 -29 -28 -27 -27 -26 -24 -21 -17 -15 -14 -15 -18 -23 -29 -34 -36 -36 -32 -23 -14 -9 -9 -13 -18 -24 -31 -37 -40 -41 -39 -36 -32 -30 -32 -34 -34 -33 -34 -34 -34 -33 -31 -29 -27 -25 -24 -23 -22 -19 -18 -21 -26 -29 -29 -27 -25 -25 -24 -23 -23 -22 -22 -21 -21 -22 -22 -25 -30 -32 -32 -32 -34 -38 -39 -36 -33 -31 -30 -29 -28 -24 -9 -9 -9 -9 -10 -9 -9 -8 -9 -9 -9 -9 -9 -8 -8 -7 -6 -5 -4 -3 -3 -3 -3 -4 -5 -6 -7 -7 -7 -8 -7 -7 -6 -5 -4 -3 -3 -2 -2 -2 -3 -2 -2 -2 -3 -4 -6 -8 -9 -11 -12 -12 -12 -11 -10 -9 -8 -7 -7 -7 -6 -7 -7 -8 -7 -8 -9 -10 -11 -11 -10 -10 -11 -13 -12 -10 -8 -7 -6 -7 -8 -8 -7 -6 -7 -7 -6 -5 -5 -5 -5 -6 -8 -11 -16 -21 -25 -27 -27 -26 -27 -28 -29 -29 -29 -28 -26 -25 -23 -21 -18 -14 -10 -6 -3 -2 -2 -4 -4 -5 -7 -8 -10 -12 -13 -14 -14 -15 -15 -15 -16 -17 -19 -19 -20 -20 -19 -17 -14 -11 -7 -3 -1 0 1 3 4 4 4 3 2 2 1 -0 -2 -4 -8 -13 -16 -19 -19 -21 -24 -26 -29 -32 -35 -35 -33 -30 -30 -31 -31 -30 -29 -28 -29 -31 -34 -38 -39 -38 -35 -30 -25 -24 -23 -22 -21 -22 -23 -23 -23 -24 -25 -26 -24 -20 -16 -12 -8 -6 -6 -6 -9 -12 -14 -15 -17 -19 -22 -24 -25 -25 -25 -26 -26 -26 -28 -29 -29 -28 -27 -28 -30 -32 -34 -34 -33 -30 -27 -26 -25 -25 -26 -27 -31 -35 -38 -35 -29 -23 -18 -16 -16 -16 -18 -21 -23 -24 -24 -24 -25 -28 -29 -30 -29 -27 -24 -20 -18 -16 -15 -18 -21 -25 -29 -30 -31 -31 -32 -33 -34 -34 -32 -29 -25 -23 -23 -25 -27 -28 -28 -27 -25 -22 -15 -13 -11 -14 -23 -31 -35 -36 -35 -32 -30 -27 -25 -24 -23 -21 -19 -17 -17 -17 -19 -20 -20 -18 -17 -18 -22 -27 -30 -30 -29 -27 -25 -25 -27 -27 -25 -22 -18 -18 -20 -22 -25 -28 -30 -30 -29 -29 -29 -29 -27 -24 -22 -19 -16 -15 -17 -21 -27 -32 -36 -37 -36 -30 -22 -15 -11 -12 -16 -22 -29 -35 -38 -40 -39 -37 -33 -31 -31 -31 -30 -30 -33 -34 -35 -34 -33 -32 -29 -27 -25 -25 -23 -20 -18 -19 -25 -29 -30 -28 -26 -25 -25 -25 -24 -22 -22 -21 -20 -21 -22 -25 -29 -32 -32 -32 -33 -35 -37 -37 -34 -32 -30 -29 -28 -24 -9 -9 -9 -9 -9 -9 -8 -8 -8 -8 -8 -7 -6 -6 -5 -5 -4 -4 -3 -3 -3 -4 -5 -6 -7 -8 -8 -8 -7 -7 -6 -5 -4 -2 -1 -1 -1 -1 -1 -2 -4 -5 -5 -6 -7 -7 -8 -9 -10 -10 -11 -11 -11 -11 -10 -9 -7 -6 -6 -6 -6 -6 -7 -7 -7 -7 -9 -11 -12 -13 -13 -13 -12 -13 -14 -13 -12 -11 -10 -11 -11 -11 -9 -9 -10 -11 -10 -9 -8 -6 -5 -4 -4 -5 -7 -10 -14 -18 -20 -20 -21 -22 -23 -25 -26 -26 -27 -27 -27 -27 -26 -24 -20 -15 -10 -5 -2 -2 -2 -3 -3 -4 -6 -7 -9 -10 -12 -13 -14 -15 -16 -16 -17 -17 -18 -19 -20 -20 -19 -17 -14 -11 -7 -4 -1 1 3 3 3 3 3 3 2 2 1 0 -4 -10 -13 -14 -14 -16 -18 -20 -22 -27 -32 -33 -32 -30 -29 -31 -33 -33 -32 -30 -29 -29 -31 -34 -39 -40 -39 -35 -30 -27 -26 -24 -22 -21 -20 -20 -20 -22 -25 -28 -29 -28 -25 -22 -16 -11 -8 -6 -8 -10 -11 -14 -17 -21 -23 -23 -23 -24 -25 -26 -26 -25 -25 -25 -27 -27 -27 -27 -28 -31 -34 -35 -33 -30 -28 -27 -27 -27 -28 -29 -32 -35 -38 -37 -33 -28 -23 -19 -17 -16 -14 -15 -18 -21 -23 -23 -22 -25 -27 -29 -30 -29 -28 -26 -23 -20 -18 -19 -21 -23 -24 -27 -29 -31 -31 -31 -30 -31 -32 -34 -32 -27 -26 -27 -29 -29 -29 -29 -29 -28 -21 -16 -12 -11 -16 -23 -29 -34 -36 -36 -33 -29 -26 -24 -23 -22 -20 -18 -17 -17 -18 -19 -19 -19 -18 -17 -18 -22 -26 -28 -28 -28 -27 -26 -27 -27 -26 -24 -20 -18 -18 -19 -22 -26 -28 -30 -30 -30 -30 -30 -29 -27 -26 -23 -20 -17 -17 -21 -27 -32 -35 -36 -36 -34 -29 -22 -14 -10 -13 -19 -26 -32 -37 -41 -42 -40 -35 -32 -31 -29 -28 -29 -32 -34 -34 -35 -34 -33 -31 -29 -27 -26 -24 -21 -19 -18 -23 -28 -30 -30 -27 -26 -26 -26 -26 -23 -22 -21 -20 -20 -23 -25 -28 -31 -33 -32 -32 -33 -35 -36 -35 -34 -32 -31 -29 -25 -8 -8 -8 -9 -9 -9 -9 -8 -8 -7 -5 -4 -4 -4 -4 -5 -5 -5 -6 -6 -6 -6 -7 -8 -9 -9 -8 -7 -6 -5 -4 -3 -2 -1 -1 -1 -2 -3 -4 -5 -8 -10 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -9 -10 -11 -10 -9 -8 -7 -8 -7 -7 -8 -9 -9 -10 -12 -14 -15 -16 -17 -18 -18 -18 -18 -17 -16 -15 -14 -14 -14 -14 -12 -12 -12 -12 -13 -13 -12 -10 -8 -6 -5 -5 -5 -6 -7 -9 -12 -14 -15 -16 -17 -19 -20 -21 -22 -24 -25 -26 -28 -29 -29 -26 -21 -15 -8 -4 -3 -3 -3 -2 -3 -3 -5 -6 -8 -11 -13 -14 -14 -15 -16 -16 -16 -17 -17 -19 -20 -20 -19 -18 -15 -12 -8 -5 -3 -1 0 1 2 2 1 1 2 2 -2 -6 -8 -9 -10 -12 -13 -13 -15 -19 -24 -26 -26 -26 -26 -27 -29 -31 -31 -31 -30 -29 -29 -31 -36 -38 -40 -39 -35 -31 -28 -26 -24 -22 -19 -18 -17 -19 -22 -25 -28 -30 -30 -29 -25 -21 -16 -11 -8 -10 -14 -18 -21 -22 -23 -23 -23 -24 -26 -28 -28 -27 -26 -25 -25 -25 -24 -26 -27 -30 -33 -35 -35 -32 -29 -27 -26 -27 -29 -31 -32 -33 -34 -34 -33 -30 -28 -23 -20 -16 -12 -12 -15 -18 -20 -21 -21 -23 -25 -27 -29 -29 -30 -30 -28 -25 -23 -22 -22 -21 -20 -22 -25 -29 -31 -31 -30 -30 -32 -34 -34 -31 -29 -28 -29 -30 -30 -31 -32 -32 -27 -22 -16 -13 -12 -16 -22 -28 -33 -35 -33 -31 -27 -25 -24 -23 -22 -20 -18 -17 -18 -18 -19 -19 -19 -17 -16 -18 -21 -25 -27 -28 -28 -28 -27 -27 -27 -25 -23 -20 -17 -16 -18 -23 -26 -28 -29 -30 -30 -30 -30 -30 -29 -26 -24 -21 -18 -20 -24 -29 -33 -35 -35 -35 -33 -28 -19 -12 -12 -15 -22 -28 -33 -39 -42 -42 -38 -35 -33 -31 -29 -29 -31 -33 -35 -36 -36 -35 -34 -32 -29 -27 -25 -23 -21 -19 -21 -25 -29 -30 -29 -28 -27 -27 -27 -24 -22 -21 -20 -19 -23 -25 -27 -29 -31 -31 -31 -31 -33 -36 -36 -36 -35 -32 -31 -27 -7 -8 -8 -8 -8 -8 -8 -7 -7 -6 -5 -4 -4 -5 -6 -7 -8 -9 -9 -9 -9 -9 -9 -8 -8 -7 -6 -5 -4 -3 -2 -2 -2 -2 -3 -4 -5 -6 -7 -8 -10 -11 -11 -10 -8 -7 -7 -6 -6 -7 -10 -11 -11 -11 -9 -10 -11 -10 -8 -8 -8 -8 -8 -9 -11 -12 -14 -15 -15 -15 -17 -18 -21 -22 -21 -19 -18 -17 -16 -14 -14 -14 -14 -14 -14 -15 -15 -15 -14 -12 -11 -10 -8 -6 -6 -6 -6 -8 -9 -9 -10 -12 -13 -15 -16 -16 -17 -19 -20 -22 -24 -27 -30 -31 -30 -26 -19 -12 -8 -6 -5 -5 -3 -3 -3 -4 -6 -9 -11 -12 -12 -11 -12 -13 -14 -14 -14 -16 -17 -19 -20 -22 -21 -19 -17 -14 -12 -9 -6 -3 -0 -0 -1 -1 -1 -1 -2 -5 -6 -7 -8 -9 -9 -9 -10 -12 -14 -15 -16 -18 -21 -24 -26 -27 -28 -29 -30 -30 -29 -28 -29 -32 -36 -38 -39 -35 -31 -28 -25 -21 -19 -17 -16 -17 -19 -22 -25 -27 -29 -30 -31 -29 -25 -20 -13 -13 -16 -19 -23 -22 -23 -23 -22 -22 -22 -24 -26 -28 -29 -28 -26 -25 -24 -26 -27 -30 -34 -36 -36 -33 -29 -26 -24 -26 -28 -30 -30 -31 -30 -29 -28 -27 -29 -28 -25 -21 -16 -14 -13 -14 -16 -18 -18 -19 -21 -23 -26 -29 -31 -32 -32 -31 -28 -25 -23 -20 -17 -18 -21 -24 -27 -28 -28 -29 -31 -34 -36 -35 -33 -32 -30 -31 -31 -30 -30 -30 -30 -27 -22 -17 -13 -14 -17 -22 -27 -32 -33 -32 -30 -26 -25 -23 -22 -20 -19 -18 -18 -18 -18 -19 -19 -18 -17 -16 -17 -21 -25 -28 -29 -28 -27 -27 -27 -27 -25 -22 -19 -16 -17 -19 -22 -25 -27 -29 -30 -31 -31 -31 -31 -29 -27 -24 -21 -20 -23 -27 -32 -35 -35 -35 -35 -33 -27 -17 -12 -13 -18 -26 -33 -38 -42 -42 -41 -38 -35 -32 -30 -29 -31 -33 -35 -36 -37 -38 -37 -34 -31 -28 -26 -24 -23 -20 -20 -23 -28 -31 -30 -29 -29 -28 -28 -25 -23 -21 -20 -19 -22 -25 -26 -26 -28 -30 -30 -30 -32 -36 -38 -38 -36 -34 -31 -29 -8 -8 -7 -7 -7 -7 -7 -7 -7 -6 -6 -6 -7 -8 -9 -10 -10 -10 -10 -10 -9 -8 -7 -7 -6 -5 -4 -3 -2 -2 -2 -3 -4 -5 -7 -7 -7 -7 -8 -8 -9 -9 -9 -7 -6 -5 -5 -5 -6 -7 -10 -12 -11 -9 -7 -8 -9 -8 -7 -7 -7 -7 -8 -9 -10 -11 -11 -12 -11 -11 -11 -12 -14 -15 -15 -15 -15 -15 -13 -12 -12 -12 -12 -12 -14 -17 -18 -17 -13 -12 -11 -11 -10 -8 -6 -6 -6 -7 -8 -9 -10 -10 -12 -12 -13 -14 -15 -16 -17 -18 -21 -23 -27 -30 -31 -30 -27 -21 -16 -13 -11 -11 -10 -7 -5 -3 -4 -5 -7 -9 -10 -9 -9 -10 -11 -13 -13 -13 -14 -16 -18 -21 -23 -24 -24 -22 -20 -18 -14 -10 -6 -4 -3 -4 -5 -5 -5 -5 -6 -6 -5 -5 -5 -5 -6 -8 -8 -8 -9 -12 -18 -21 -23 -23 -23 -25 -27 -27 -27 -25 -24 -26 -30 -34 -38 -36 -32 -27 -22 -21 -20 -19 -18 -18 -17 -18 -20 -22 -25 -27 -30 -31 -30 -28 -21 -19 -17 -16 -20 -21 -22 -21 -19 -16 -17 -20 -23 -26 -27 -28 -28 -27 -25 -25 -26 -29 -33 -36 -35 -32 -28 -26 -24 -24 -26 -28 -29 -30 -28 -26 -24 -22 -26 -28 -28 -26 -23 -19 -16 -15 -15 -17 -17 -17 -19 -20 -23 -25 -28 -31 -33 -35 -33 -29 -25 -20 -16 -15 -16 -18 -21 -23 -25 -27 -30 -32 -35 -36 -37 -36 -33 -32 -30 -30 -31 -33 -33 -31 -27 -21 -16 -13 -14 -17 -22 -28 -31 -33 -32 -29 -26 -24 -22 -20 -20 -19 -19 -19 -19 -18 -19 -19 -18 -16 -15 -17 -21 -25 -29 -29 -28 -27 -26 -27 -27 -25 -22 -19 -17 -18 -20 -22 -25 -28 -30 -31 -31 -32 -32 -31 -30 -28 -24 -22 -22 -24 -30 -35 -36 -36 -36 -35 -32 -24 -16 -12 -15 -24 -32 -38 -41 -43 -42 -40 -36 -32 -30 -29 -30 -33 -35 -37 -39 -40 -39 -36 -32 -29 -27 -25 -24 -22 -20 -21 -26 -30 -31 -30 -30 -30 -29 -26 -24 -22 -20 -20 -22 -24 -25 -24 -26 -29 -31 -32 -33 -38 -40 -40 -38 -35 -31 -29 -7 -7 -6 -6 -6 -6 -6 -6 -7 -7 -8 -8 -9 -9 -9 -9 -8 -8 -8 -7 -6 -5 -4 -4 -3 -2 -2 -2 -3 -4 -5 -6 -7 -7 -7 -7 -6 -5 -5 -5 -6 -6 -5 -6 -7 -6 -6 -7 -7 -7 -8 -9 -8 -7 -6 -6 -5 -5 -5 -6 -5 -5 -5 -6 -6 -6 -6 -7 -6 -6 -6 -7 -8 -9 -10 -9 -9 -9 -8 -9 -9 -9 -8 -8 -9 -12 -15 -18 -17 -14 -12 -10 -9 -7 -5 -4 -5 -5 -6 -8 -8 -8 -9 -10 -12 -13 -14 -14 -14 -15 -17 -20 -23 -26 -28 -29 -29 -27 -23 -19 -16 -16 -17 -16 -13 -10 -7 -5 -4 -4 -6 -7 -8 -9 -10 -11 -10 -11 -12 -13 -14 -16 -20 -23 -25 -27 -27 -26 -25 -21 -16 -11 -7 -6 -7 -8 -8 -7 -6 -5 -3 -2 -2 -2 -4 -5 -6 -6 -7 -8 -11 -14 -16 -17 -18 -20 -21 -21 -21 -20 -19 -20 -22 -26 -31 -33 -33 -30 -24 -21 -20 -18 -17 -17 -17 -19 -20 -21 -22 -24 -27 -30 -31 -31 -29 -27 -23 -17 -17 -18 -19 -18 -15 -11 -13 -16 -19 -22 -24 -27 -29 -29 -28 -27 -28 -30 -33 -35 -33 -29 -27 -27 -27 -26 -26 -26 -27 -29 -28 -27 -25 -22 -22 -24 -26 -28 -28 -24 -21 -19 -17 -17 -16 -15 -16 -18 -21 -22 -24 -26 -30 -34 -34 -31 -28 -24 -19 -15 -12 -12 -15 -19 -22 -25 -27 -28 -31 -34 -36 -38 -36 -33 -32 -32 -33 -33 -32 -30 -28 -26 -20 -15 -12 -14 -18 -24 -29 -32 -34 -32 -29 -27 -25 -21 -21 -20 -20 -20 -20 -19 -19 -19 -19 -17 -16 -15 -17 -21 -27 -29 -29 -28 -26 -26 -27 -27 -25 -23 -21 -20 -20 -21 -23 -27 -29 -30 -31 -32 -32 -33 -32 -31 -28 -25 -22 -23 -26 -33 -37 -38 -38 -37 -36 -31 -24 -16 -13 -21 -29 -36 -40 -42 -43 -42 -39 -36 -33 -31 -32 -33 -35 -36 -39 -41 -40 -37 -34 -31 -29 -27 -26 -24 -21 -20 -22 -27 -31 -32 -31 -30 -30 -28 -26 -23 -21 -21 -22 -23 -25 -23 -26 -30 -33 -34 -35 -39 -42 -42 -39 -36 -31 -28 -6 -5 -5 -5 -5 -5 -6 -6 -6 -7 -8 -8 -8 -8 -8 -6 -5 -4 -4 -3 -2 -2 -1 -1 -1 -1 -2 -4 -5 -6 -6 -7 -6 -6 -5 -4 -4 -3 -4 -5 -7 -6 -6 -6 -7 -6 -6 -7 -7 -6 -7 -6 -5 -4 -3 -3 -3 -4 -4 -4 -3 -3 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -4 -5 -5 -4 -4 -5 -5 -6 -7 -7 -6 -6 -7 -8 -11 -14 -15 -14 -14 -13 -10 -5 -3 -2 -2 -3 -4 -5 -6 -6 -7 -8 -9 -10 -11 -12 -12 -12 -14 -16 -18 -21 -23 -25 -27 -27 -26 -24 -21 -19 -19 -21 -21 -19 -14 -9 -5 -3 -4 -5 -6 -7 -8 -9 -10 -9 -9 -10 -11 -12 -14 -16 -19 -23 -25 -27 -29 -30 -28 -23 -17 -12 -10 -11 -11 -12 -12 -11 -9 -7 -6 -4 -3 -3 -4 -6 -6 -6 -5 -6 -8 -11 -14 -15 -15 -15 -15 -15 -15 -14 -15 -16 -21 -27 -31 -31 -25 -20 -18 -17 -16 -16 -16 -18 -18 -18 -19 -19 -22 -25 -27 -28 -30 -31 -28 -24 -21 -19 -17 -15 -13 -10 -10 -11 -13 -16 -21 -26 -29 -31 -30 -30 -29 -30 -32 -34 -32 -29 -26 -25 -25 -24 -24 -24 -25 -27 -29 -29 -27 -24 -19 -19 -21 -25 -28 -28 -26 -23 -20 -18 -16 -14 -13 -15 -19 -21 -23 -25 -27 -30 -32 -32 -31 -27 -23 -18 -13 -9 -10 -14 -17 -20 -22 -23 -26 -29 -33 -37 -37 -36 -34 -32 -32 -31 -31 -31 -30 -28 -25 -20 -15 -13 -14 -18 -23 -29 -34 -35 -31 -29 -27 -23 -22 -21 -21 -21 -20 -20 -20 -20 -20 -19 -18 -16 -14 -16 -23 -28 -30 -29 -26 -25 -26 -27 -28 -26 -24 -22 -20 -19 -21 -24 -27 -29 -31 -32 -33 -34 -34 -33 -31 -28 -25 -23 -23 -29 -36 -40 -41 -40 -38 -35 -30 -22 -15 -18 -26 -33 -38 -41 -43 -43 -41 -37 -34 -33 -32 -32 -34 -36 -39 -40 -40 -38 -36 -33 -31 -29 -27 -26 -23 -21 -20 -25 -30 -31 -31 -30 -30 -29 -27 -24 -22 -22 -21 -21 -23 -22 -24 -28 -33 -35 -35 -38 -42 -43 -41 -37 -32 -28 -4 -4 -4 -4 -5 -6 -6 -6 -6 -7 -7 -7 -7 -7 -6 -6 -4 -4 -3 -2 -2 -2 -2 -2 -2 -3 -5 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -6 -7 -8 -8 -8 -7 -6 -5 -4 -4 -4 -4 -5 -4 -3 -2 -3 -3 -3 -3 -3 -2 -2 -1 -1 -1 -1 -1 -1 -1 -1 -2 -2 -3 -4 -4 -4 -5 -5 -6 -5 -7 -8 -8 -7 -7 -8 -9 -11 -12 -13 -15 -16 -16 -12 -6 -3 -2 -1 -1 -2 -3 -3 -4 -5 -6 -6 -7 -8 -10 -10 -10 -11 -12 -14 -16 -17 -19 -21 -23 -24 -24 -22 -21 -20 -22 -24 -25 -22 -16 -10 -6 -5 -4 -6 -7 -8 -8 -8 -7 -7 -8 -10 -10 -11 -11 -13 -16 -18 -22 -25 -29 -32 -30 -26 -20 -14 -11 -11 -13 -15 -16 -16 -14 -12 -9 -5 -4 -4 -5 -6 -5 -4 -4 -5 -7 -9 -9 -9 -9 -10 -11 -11 -10 -8 -8 -10 -17 -24 -26 -23 -17 -16 -16 -16 -16 -15 -16 -17 -18 -20 -20 -21 -22 -23 -24 -28 -30 -30 -29 -26 -22 -17 -13 -11 -10 -9 -9 -10 -11 -17 -22 -26 -29 -30 -31 -31 -32 -32 -32 -30 -28 -25 -24 -23 -22 -23 -24 -25 -26 -28 -29 -29 -29 -24 -21 -20 -21 -25 -27 -27 -25 -23 -21 -18 -15 -13 -13 -16 -19 -21 -22 -23 -26 -28 -30 -30 -28 -25 -21 -16 -11 -8 -9 -11 -15 -19 -21 -22 -25 -28 -34 -37 -37 -35 -33 -32 -31 -31 -31 -31 -31 -28 -24 -19 -15 -13 -15 -20 -26 -32 -35 -33 -31 -29 -25 -24 -22 -22 -22 -21 -22 -22 -22 -21 -21 -20 -17 -15 -14 -19 -24 -28 -29 -26 -24 -24 -26 -28 -29 -28 -25 -21 -18 -18 -21 -25 -28 -31 -32 -33 -34 -35 -34 -33 -30 -27 -24 -22 -26 -34 -40 -44 -43 -40 -37 -33 -27 -20 -18 -23 -30 -37 -40 -42 -42 -41 -37 -34 -33 -33 -33 -33 -36 -38 -40 -39 -38 -37 -36 -33 -31 -29 -27 -25 -22 -20 -23 -28 -31 -31 -31 -30 -28 -27 -25 -23 -22 -20 -20 -21 -22 -22 -25 -29 -31 -31 -35 -40 -43 -42 -38 -33 -28 -4 -4 -5 -6 -7 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -9 -9 -8 -7 -6 -5 -4 -4 -5 -5 -6 -6 -7 -7 -7 -6 -6 -6 -7 -7 -8 -8 -8 -8 -8 -9 -9 -8 -7 -5 -4 -3 -2 -2 -3 -4 -4 -4 -4 -3 -3 -3 -3 -2 -1 -1 -2 -1 -1 -1 -2 -2 -2 -3 -3 -4 -5 -6 -6 -6 -7 -8 -9 -9 -9 -10 -10 -9 -9 -10 -12 -13 -14 -16 -17 -18 -16 -13 -9 -7 -4 -2 -1 -1 -1 -1 -1 -1 -2 -2 -4 -5 -7 -8 -8 -9 -10 -10 -11 -11 -12 -12 -14 -17 -20 -21 -20 -20 -21 -24 -26 -25 -21 -16 -11 -8 -6 -6 -6 -6 -7 -6 -6 -6 -6 -8 -9 -9 -9 -9 -11 -13 -15 -18 -22 -27 -30 -30 -27 -22 -16 -14 -13 -13 -14 -14 -15 -15 -14 -12 -10 -9 -7 -5 -3 -0 -1 -3 -5 -7 -5 -4 -4 -4 -5 -6 -6 -5 -4 -3 -6 -11 -16 -18 -14 -14 -15 -15 -15 -14 -15 -16 -17 -19 -19 -20 -20 -21 -21 -24 -26 -28 -30 -30 -28 -25 -21 -17 -14 -10 -8 -8 -9 -13 -17 -20 -23 -26 -29 -33 -35 -35 -32 -29 -26 -24 -24 -23 -23 -23 -23 -24 -25 -27 -29 -28 -28 -25 -23 -21 -19 -19 -21 -23 -23 -23 -21 -20 -18 -16 -15 -16 -17 -19 -19 -20 -22 -24 -26 -28 -28 -27 -24 -20 -15 -11 -8 -8 -10 -14 -18 -20 -22 -25 -29 -32 -35 -35 -35 -34 -33 -32 -32 -31 -31 -30 -27 -24 -18 -15 -14 -17 -22 -27 -31 -32 -32 -31 -28 -26 -24 -23 -23 -22 -23 -23 -23 -23 -22 -21 -19 -16 -12 -13 -19 -25 -28 -26 -23 -21 -22 -27 -30 -30 -27 -24 -20 -18 -19 -22 -26 -30 -32 -34 -35 -36 -36 -35 -33 -30 -27 -24 -25 -31 -39 -45 -45 -43 -40 -35 -29 -22 -17 -19 -26 -34 -38 -40 -41 -39 -36 -35 -34 -33 -33 -32 -34 -37 -39 -40 -40 -39 -38 -35 -32 -30 -28 -26 -24 -21 -22 -26 -30 -32 -32 -30 -28 -27 -26 -25 -23 -21 -20 -20 -21 -22 -23 -26 -28 -30 -34 -38 -42 -43 -39 -34 -30 -7 -8 -9 -10 -11 -11 -12 -12 -11 -11 -10 -10 -10 -11 -11 -12 -12 -12 -10 -9 -7 -6 -6 -7 -7 -8 -8 -8 -8 -8 -8 -8 -9 -9 -9 -9 -9 -9 -8 -8 -8 -7 -7 -6 -5 -3 -2 -2 -3 -4 -4 -5 -7 -7 -5 -4 -4 -3 -3 -2 -2 -3 -3 -3 -3 -3 -3 -4 -4 -5 -5 -6 -7 -7 -7 -8 -9 -9 -8 -8 -9 -9 -9 -9 -10 -12 -13 -15 -16 -18 -18 -17 -15 -12 -11 -8 -6 -4 -3 -1 0 1 3 3 2 0 -1 -3 -5 -6 -7 -7 -8 -7 -6 -5 -5 -7 -10 -13 -15 -16 -16 -17 -19 -22 -23 -22 -19 -15 -12 -9 -7 -6 -5 -5 -6 -6 -6 -6 -7 -8 -9 -9 -9 -9 -11 -12 -14 -16 -19 -22 -25 -26 -25 -22 -18 -15 -13 -12 -13 -14 -15 -15 -15 -14 -13 -13 -11 -10 -7 -4 -3 -2 -2 -1 1 1 1 -1 -3 -5 -6 -6 -2 -0 -1 -5 -10 -10 -11 -12 -12 -13 -13 -14 -14 -15 -16 -17 -18 -19 -19 -20 -21 -23 -25 -28 -30 -30 -29 -26 -21 -17 -13 -10 -9 -8 -9 -11 -14 -18 -22 -27 -32 -36 -37 -32 -28 -26 -25 -25 -24 -24 -23 -23 -23 -25 -28 -29 -28 -26 -25 -25 -24 -22 -20 -20 -21 -21 -21 -22 -23 -22 -20 -18 -18 -18 -18 -17 -17 -18 -20 -23 -25 -26 -25 -24 -22 -19 -15 -11 -9 -8 -9 -13 -16 -18 -21 -23 -28 -33 -36 -37 -35 -34 -33 -32 -32 -32 -31 -30 -28 -23 -19 -16 -15 -18 -22 -27 -30 -32 -33 -31 -29 -26 -24 -23 -23 -23 -24 -24 -24 -24 -22 -20 -18 -14 -11 -15 -21 -27 -26 -23 -21 -21 -23 -27 -30 -30 -28 -24 -20 -19 -20 -24 -28 -32 -34 -35 -36 -37 -36 -34 -32 -30 -27 -26 -29 -37 -45 -47 -46 -42 -36 -30 -26 -22 -21 -24 -30 -35 -37 -38 -38 -37 -36 -35 -34 -33 -32 -33 -35 -38 -40 -41 -41 -40 -37 -34 -32 -29 -27 -26 -22 -21 -23 -28 -32 -32 -30 -28 -27 -27 -27 -26 -23 -21 -20 -21 -22 -23 -25 -27 -30 -33 -36 -39 -43 -42 -37 -32 -11 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -11 -11 -11 -12 -12 -12 -11 -10 -8 -8 -8 -9 -9 -9 -9 -9 -10 -10 -10 -10 -10 -9 -9 -9 -8 -7 -7 -6 -6 -5 -5 -4 -4 -3 -3 -3 -4 -6 -7 -7 -8 -9 -8 -5 -5 -5 -5 -4 -3 -4 -4 -4 -4 -3 -4 -4 -4 -5 -5 -6 -6 -5 -5 -6 -7 -7 -7 -6 -6 -7 -7 -8 -8 -9 -10 -12 -14 -16 -16 -15 -14 -13 -11 -10 -8 -7 -5 -3 -1 2 4 5 5 4 3 1 -2 -3 -3 -3 -5 -5 -4 -2 -2 -2 -4 -5 -7 -9 -10 -11 -13 -15 -17 -19 -18 -16 -15 -13 -10 -8 -7 -6 -6 -6 -6 -6 -6 -7 -8 -8 -9 -9 -10 -12 -13 -14 -13 -15 -17 -20 -22 -22 -21 -19 -16 -14 -12 -12 -12 -13 -14 -14 -14 -14 -15 -16 -14 -12 -8 -5 -2 -1 -0 1 3 4 3 -0 -4 -7 -6 -3 1 2 -1 -4 -7 -9 -10 -10 -11 -12 -13 -13 -14 -16 -16 -17 -17 -19 -19 -20 -22 -25 -29 -31 -32 -31 -27 -23 -19 -16 -14 -12 -12 -13 -15 -18 -20 -24 -28 -32 -34 -33 -31 -29 -28 -26 -25 -24 -24 -24 -24 -26 -28 -29 -29 -27 -25 -24 -24 -25 -22 -21 -20 -19 -20 -21 -22 -23 -23 -22 -21 -20 -18 -16 -13 -14 -17 -20 -22 -21 -22 -22 -22 -21 -19 -15 -12 -10 -9 -10 -11 -14 -16 -19 -23 -27 -31 -35 -36 -34 -33 -33 -33 -33 -32 -32 -30 -28 -25 -21 -18 -17 -19 -24 -29 -34 -36 -34 -31 -28 -25 -23 -23 -24 -25 -25 -26 -25 -22 -20 -20 -17 -12 -12 -16 -24 -25 -23 -21 -20 -20 -25 -29 -32 -31 -28 -24 -21 -20 -21 -25 -30 -34 -36 -36 -37 -37 -36 -34 -32 -30 -28 -28 -32 -41 -47 -48 -44 -38 -32 -29 -27 -26 -27 -32 -36 -39 -40 -38 -38 -38 -37 -35 -33 -32 -32 -33 -36 -38 -39 -39 -40 -39 -37 -34 -31 -28 -27 -24 -21 -21 -26 -31 -32 -31 -30 -29 -28 -28 -27 -25 -22 -20 -21 -22 -23 -25 -28 -31 -34 -34 -37 -42 -42 -39 -35 -12 -12 -12 -12 -11 -11 -11 -11 -11 -11 -11 -10 -10 -9 -9 -9 -9 -10 -9 -9 -9 -9 -10 -10 -11 -11 -11 -10 -10 -10 -10 -9 -9 -8 -7 -6 -6 -5 -5 -5 -6 -5 -4 -4 -3 -3 -2 -3 -4 -6 -8 -7 -7 -8 -8 -7 -6 -6 -5 -5 -4 -5 -5 -4 -3 -3 -3 -3 -3 -4 -4 -5 -5 -5 -4 -5 -6 -7 -7 -6 -6 -6 -7 -7 -7 -7 -8 -9 -11 -13 -14 -13 -13 -13 -12 -11 -10 -9 -8 -7 -5 -3 -1 2 4 5 5 5 4 3 2 1 -1 -1 -1 -1 -0 0 2 2 1 -2 -4 -5 -6 -6 -8 -10 -12 -13 -13 -13 -12 -11 -9 -8 -7 -6 -6 -6 -6 -7 -7 -8 -8 -8 -10 -11 -13 -13 -12 -11 -11 -13 -15 -18 -20 -20 -19 -17 -14 -12 -11 -10 -11 -11 -12 -13 -14 -16 -16 -14 -12 -10 -7 -5 -2 0 3 5 6 5 3 -1 -6 -6 -3 0 2 1 -3 -6 -8 -7 -8 -9 -10 -11 -12 -13 -14 -15 -15 -17 -17 -18 -20 -22 -25 -29 -31 -33 -32 -29 -25 -21 -19 -17 -15 -14 -14 -15 -17 -20 -22 -25 -27 -29 -30 -30 -30 -29 -28 -28 -27 -27 -25 -25 -25 -26 -28 -27 -25 -24 -24 -26 -25 -23 -21 -19 -18 -19 -20 -22 -23 -23 -24 -23 -20 -17 -13 -12 -13 -15 -17 -17 -18 -19 -20 -21 -20 -18 -16 -14 -11 -10 -10 -11 -13 -15 -18 -22 -26 -29 -32 -33 -33 -34 -34 -34 -33 -33 -32 -31 -29 -25 -21 -18 -19 -23 -28 -32 -34 -32 -31 -28 -26 -25 -25 -25 -25 -25 -27 -26 -24 -22 -22 -21 -15 -12 -12 -19 -23 -23 -22 -21 -20 -23 -27 -32 -35 -33 -29 -25 -22 -20 -23 -29 -33 -36 -37 -37 -37 -37 -36 -35 -33 -31 -29 -28 -34 -43 -48 -48 -42 -35 -32 -29 -28 -28 -32 -36 -38 -38 -37 -37 -38 -38 -37 -35 -33 -31 -31 -33 -35 -37 -38 -39 -40 -39 -36 -32 -29 -28 -26 -22 -21 -24 -30 -32 -32 -31 -30 -29 -28 -28 -27 -24 -22 -21 -21 -22 -24 -28 -32 -34 -34 -36 -40 -42 -41 -39 -11 -11 -11 -10 -10 -9 -8 -8 -8 -8 -8 -8 -8 -7 -7 -7 -7 -8 -8 -9 -10 -11 -11 -11 -11 -11 -11 -10 -10 -9 -8 -7 -6 -5 -4 -4 -4 -4 -4 -5 -6 -5 -4 -4 -3 -2 -3 -4 -6 -8 -10 -9 -8 -8 -8 -7 -6 -6 -5 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -4 -4 -4 -4 -4 -4 -5 -6 -6 -6 -6 -7 -7 -7 -7 -7 -7 -7 -9 -10 -11 -11 -11 -12 -11 -10 -9 -8 -9 -9 -9 -7 -5 -4 -2 -1 1 2 3 3 2 1 -0 1 1 0 1 2 3 4 4 3 1 -1 -2 -3 -3 -4 -5 -6 -7 -8 -9 -9 -10 -10 -9 -8 -8 -8 -8 -8 -8 -8 -7 -8 -9 -9 -10 -11 -11 -9 -8 -8 -10 -12 -14 -17 -19 -19 -17 -14 -12 -10 -9 -9 -9 -10 -11 -13 -13 -13 -13 -12 -10 -8 -5 -3 0 3 5 7 7 6 -1 -4 -6 -4 -1 2 2 -0 -3 -4 -5 -6 -8 -10 -11 -10 -11 -12 -13 -16 -16 -17 -19 -20 -22 -25 -29 -32 -33 -32 -29 -26 -23 -20 -18 -16 -15 -15 -16 -16 -17 -18 -21 -26 -31 -34 -35 -33 -31 -30 -29 -27 -26 -24 -23 -23 -25 -25 -25 -24 -24 -25 -25 -25 -24 -22 -20 -19 -19 -19 -21 -23 -24 -23 -22 -20 -18 -16 -15 -15 -16 -16 -16 -16 -17 -19 -20 -20 -19 -17 -15 -13 -11 -10 -11 -12 -14 -17 -20 -24 -28 -31 -33 -34 -34 -34 -34 -34 -33 -33 -31 -29 -25 -20 -21 -23 -27 -30 -32 -32 -31 -30 -28 -27 -26 -25 -25 -25 -27 -25 -25 -25 -25 -23 -20 -16 -12 -14 -19 -21 -21 -21 -20 -20 -23 -28 -34 -35 -33 -30 -26 -22 -23 -27 -32 -36 -37 -37 -37 -38 -38 -37 -35 -33 -31 -27 -29 -38 -47 -51 -47 -39 -35 -33 -31 -30 -32 -33 -34 -35 -36 -37 -38 -39 -38 -38 -35 -32 -30 -30 -33 -35 -37 -38 -40 -40 -38 -34 -31 -28 -27 -24 -21 -21 -27 -30 -32 -31 -30 -30 -30 -29 -27 -25 -22 -21 -21 -22 -23 -28 -32 -35 -33 -35 -39 -42 -43 -42 -10 -10 -10 -9 -8 -8 -7 -6 -6 -6 -6 -7 -7 -7 -8 -8 -8 -9 -10 -11 -11 -12 -12 -11 -10 -10 -9 -8 -8 -7 -6 -5 -4 -3 -3 -3 -4 -4 -5 -5 -5 -5 -6 -6 -6 -5 -5 -7 -9 -12 -13 -12 -12 -12 -11 -10 -8 -6 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -2 -3 -3 -3 -2 -2 -2 -3 -3 -3 -4 -4 -5 -5 -6 -5 -5 -6 -7 -9 -8 -8 -7 -7 -7 -7 -6 -5 -4 -5 -6 -6 -6 -5 -5 -5 -5 -5 -4 -2 -1 -1 -3 -3 -2 -1 -0 1 1 1 2 3 3 1 -0 -1 -1 -1 -2 -2 -2 -2 -3 -4 -6 -6 -8 -9 -9 -8 -8 -9 -9 -9 -8 -8 -8 -9 -9 -8 -8 -8 -8 -7 -5 -5 -7 -9 -11 -14 -16 -17 -17 -15 -13 -10 -8 -7 -7 -8 -9 -9 -10 -10 -11 -10 -9 -8 -6 -4 -1 2 6 8 9 4 -0 -4 -6 -4 -2 0 1 0 -1 -3 -4 -4 -5 -6 -6 -8 -10 -11 -15 -16 -16 -18 -19 -20 -23 -26 -30 -32 -33 -32 -29 -27 -24 -21 -19 -18 -17 -16 -15 -14 -14 -16 -20 -26 -30 -32 -33 -32 -30 -29 -28 -27 -26 -25 -24 -24 -24 -23 -23 -23 -24 -24 -25 -25 -25 -23 -21 -19 -18 -18 -20 -21 -22 -22 -22 -21 -20 -18 -16 -13 -12 -13 -13 -15 -16 -18 -19 -20 -20 -18 -17 -14 -12 -12 -12 -12 -13 -15 -19 -24 -28 -31 -33 -33 -34 -35 -35 -35 -34 -33 -32 -29 -24 -23 -24 -27 -29 -29 -31 -32 -32 -30 -28 -26 -26 -25 -26 -26 -25 -25 -26 -27 -25 -24 -21 -16 -12 -16 -19 -20 -20 -19 -18 -20 -24 -31 -36 -36 -34 -31 -27 -24 -25 -29 -34 -36 -37 -37 -38 -39 -39 -37 -35 -33 -30 -29 -34 -43 -50 -48 -42 -39 -37 -36 -33 -31 -31 -32 -35 -36 -37 -37 -38 -39 -41 -40 -36 -30 -29 -31 -34 -36 -38 -40 -40 -39 -36 -33 -29 -27 -25 -22 -19 -23 -28 -31 -31 -31 -31 -31 -30 -28 -24 -22 -20 -20 -22 -22 -26 -32 -35 -34 -35 -38 -41 -45 -44 -9 -8 -8 -8 -8 -7 -6 -6 -5 -5 -5 -6 -7 -9 -10 -11 -11 -11 -11 -11 -11 -10 -10 -9 -8 -8 -7 -6 -5 -5 -4 -4 -3 -3 -3 -3 -4 -5 -6 -6 -6 -7 -8 -10 -10 -10 -8 -8 -9 -10 -12 -13 -12 -11 -11 -10 -9 -6 -4 -4 -4 -4 -4 -3 -2 -2 -1 -1 -1 -1 -1 -0 -0 0 0 0 0 0 -0 -1 -1 -2 -3 -3 -2 -2 -3 -5 -7 -6 -4 -3 -3 -3 -2 -1 1 2 3 2 2 1 1 -2 -3 -4 -5 -5 -4 -3 -3 -5 -7 -5 -3 -2 -1 -1 -1 -1 -1 -0 -1 -2 -2 -2 -2 -2 -2 -2 -1 -1 -2 -3 -4 -5 -6 -8 -9 -9 -9 -9 -9 -9 -9 -9 -10 -11 -10 -9 -7 -5 -4 -4 -3 -4 -4 -5 -7 -10 -15 -19 -20 -17 -13 -9 -7 -5 -5 -5 -5 -5 -6 -7 -8 -8 -8 -7 -6 -3 -1 2 6 8 6 3 -0 -3 -4 -5 -3 -2 -0 -1 -1 -2 -4 -3 -4 -5 -5 -6 -7 -11 -12 -14 -17 -18 -19 -20 -23 -27 -30 -32 -33 -32 -30 -27 -25 -23 -21 -19 -18 -16 -14 -13 -13 -16 -21 -25 -28 -31 -32 -32 -32 -30 -28 -25 -23 -23 -23 -24 -23 -23 -23 -24 -25 -26 -27 -26 -25 -23 -21 -19 -18 -17 -18 -19 -20 -21 -22 -22 -20 -18 -16 -14 -13 -13 -13 -14 -15 -16 -19 -21 -20 -20 -18 -16 -14 -13 -13 -12 -12 -14 -19 -24 -29 -32 -33 -34 -35 -35 -37 -35 -34 -34 -32 -29 -27 -26 -26 -27 -27 -29 -32 -34 -32 -31 -29 -28 -27 -26 -27 -26 -26 -25 -26 -26 -26 -25 -23 -14 -14 -18 -21 -21 -20 -18 -18 -19 -26 -33 -36 -37 -35 -32 -28 -26 -28 -31 -35 -36 -37 -38 -39 -39 -39 -38 -36 -33 -32 -33 -38 -46 -48 -45 -43 -41 -38 -34 -32 -31 -32 -36 -37 -36 -37 -38 -40 -42 -42 -39 -33 -30 -29 -31 -34 -37 -39 -40 -40 -39 -35 -31 -29 -27 -25 -21 -22 -25 -29 -32 -32 -32 -32 -30 -28 -25 -22 -21 -20 -22 -23 -25 -29 -34 -34 -35 -37 -40 -44 -45 -8 -7 -7 -7 -7 -8 -8 -8 -8 -8 -8 -8 -9 -10 -11 -12 -11 -10 -9 -9 -8 -8 -8 -7 -7 -6 -5 -4 -3 -3 -3 -3 -3 -3 -4 -5 -5 -6 -7 -7 -7 -9 -10 -12 -13 -12 -10 -8 -7 -8 -10 -11 -10 -9 -8 -8 -8 -6 -4 -3 -3 -3 -3 -2 -0 0 1 1 1 2 2 2 2 3 3 3 2 2 2 2 1 0 0 0 0 -0 -1 -2 -3 -3 -2 -1 -1 1 3 4 6 8 10 11 11 10 7 2 -1 -2 -3 -3 -1 -0 -0 -2 -4 -3 -1 0 0 -0 -1 -2 -2 -2 -2 -2 -3 -3 -2 -2 -2 -1 -1 -0 -1 -2 -4 -5 -5 -7 -8 -9 -9 -8 -9 -9 -9 -10 -11 -12 -13 -13 -11 -8 -5 -4 -3 -2 -2 -2 -4 -6 -10 -14 -16 -16 -14 -12 -9 -7 -5 -3 -2 -2 -2 -2 -3 -5 -6 -6 -6 -4 -3 -1 1 2 4 4 3 0 -2 -5 -6 -5 -3 -3 -2 -3 -4 -2 -3 -4 -5 -5 -6 -8 -10 -12 -14 -16 -17 -18 -19 -22 -27 -30 -31 -31 -29 -27 -26 -25 -23 -21 -20 -18 -15 -14 -13 -15 -17 -19 -21 -25 -29 -31 -33 -32 -30 -27 -24 -22 -22 -23 -23 -23 -24 -24 -25 -27 -28 -27 -26 -25 -24 -23 -20 -18 -17 -17 -18 -20 -21 -22 -22 -20 -19 -17 -16 -15 -13 -12 -12 -13 -15 -18 -19 -20 -21 -19 -17 -16 -15 -13 -11 -11 -15 -20 -25 -29 -31 -33 -34 -35 -36 -35 -36 -36 -34 -32 -30 -27 -24 -23 -25 -28 -32 -35 -34 -33 -31 -29 -29 -28 -27 -27 -27 -25 -25 -26 -26 -27 -28 -19 -16 -17 -22 -23 -22 -20 -18 -16 -20 -28 -35 -38 -39 -36 -33 -29 -28 -29 -33 -35 -37 -37 -38 -39 -40 -39 -38 -36 -35 -34 -35 -42 -47 -49 -48 -44 -38 -36 -33 -32 -33 -36 -38 -38 -38 -39 -41 -43 -44 -41 -35 -30 -28 -29 -32 -36 -38 -40 -41 -42 -39 -34 -31 -28 -27 -25 -22 -23 -27 -31 -33 -33 -32 -30 -28 -26 -24 -22 -21 -22 -23 -25 -28 -33 -34 -35 -37 -39 -41 -44 -8 -7 -7 -7 -7 -9 -10 -10 -10 -9 -9 -8 -9 -10 -11 -11 -10 -9 -8 -7 -7 -6 -6 -6 -5 -4 -3 -3 -2 -3 -3 -3 -4 -4 -5 -6 -7 -7 -7 -7 -7 -8 -9 -10 -11 -11 -9 -7 -6 -6 -8 -9 -8 -7 -6 -7 -6 -4 -3 -2 -2 -1 -1 -1 -0 1 1 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 5 6 8 10 13 15 16 16 15 11 4 1 1 2 1 3 4 5 4 4 4 5 5 4 3 1 1 0 -0 -1 -1 -1 -0 0 1 1 1 2 1 1 0 -2 -5 -6 -6 -7 -7 -7 -6 -7 -7 -8 -10 -11 -12 -13 -14 -13 -11 -9 -6 -4 -3 -2 -2 -3 -4 -6 -7 -9 -11 -12 -12 -11 -10 -8 -5 -2 -0 0 1 1 0 -2 -4 -5 -5 -4 -3 -3 -2 0 2 3 2 0 -3 -5 -5 -6 -6 -5 -6 -7 -4 -5 -6 -6 -6 -5 -6 -6 -7 -8 -10 -12 -14 -15 -17 -21 -24 -28 -30 -30 -28 -27 -26 -24 -21 -21 -19 -17 -15 -14 -15 -14 -14 -14 -18 -23 -28 -31 -31 -30 -28 -25 -22 -21 -22 -22 -23 -24 -25 -26 -27 -27 -28 -27 -27 -26 -25 -24 -22 -19 -18 -17 -19 -20 -20 -21 -21 -21 -20 -19 -18 -15 -13 -12 -12 -12 -14 -17 -20 -21 -21 -19 -18 -17 -16 -14 -12 -13 -16 -20 -24 -27 -31 -33 -34 -37 -35 -36 -37 -36 -33 -30 -28 -26 -25 -26 -29 -32 -35 -36 -35 -33 -31 -30 -30 -29 -29 -29 -26 -26 -27 -27 -28 -30 -24 -18 -17 -20 -23 -23 -21 -18 -15 -16 -23 -32 -38 -41 -39 -36 -33 -31 -30 -32 -35 -37 -37 -38 -39 -40 -40 -40 -40 -38 -37 -36 -38 -45 -50 -51 -46 -39 -36 -35 -34 -33 -36 -39 -41 -41 -40 -42 -44 -45 -44 -40 -33 -29 -28 -30 -33 -36 -39 -43 -46 -43 -38 -32 -29 -28 -27 -24 -23 -26 -33 -34 -34 -32 -30 -28 -27 -25 -23 -22 -22 -24 -25 -27 -31 -34 -36 -36 -37 -38 -41 -9 -9 -8 -7 -7 -8 -10 -10 -10 -10 -9 -8 -9 -9 -9 -9 -9 -8 -7 -7 -6 -6 -5 -4 -3 -2 -2 -2 -3 -3 -4 -5 -5 -6 -6 -7 -7 -7 -6 -6 -6 -6 -6 -7 -7 -7 -7 -6 -6 -7 -8 -9 -8 -7 -6 -6 -5 -3 -2 -1 -1 -0 -0 -0 -0 0 0 1 1 2 3 3 3 3 4 4 4 4 4 4 4 4 5 5 5 6 7 7 7 7 7 7 8 10 11 13 16 18 18 18 17 14 12 10 10 12 13 12 10 9 8 8 9 9 9 8 7 6 5 4 4 3 3 3 3 3 4 6 6 6 7 6 6 5 2 -2 -5 -6 -6 -6 -5 -4 -4 -5 -7 -8 -9 -10 -11 -12 -13 -13 -12 -10 -8 -6 -4 -3 -2 -3 -3 -3 -2 -3 -6 -9 -11 -11 -9 -5 -3 -1 -1 -0 1 2 2 0 -2 -3 -3 -3 -3 -3 -3 -2 -0 1 3 1 -1 -3 -6 -6 -7 -8 -9 -8 -8 -8 -7 -5 -4 -4 -4 -4 -4 -5 -7 -9 -11 -13 -15 -19 -23 -26 -29 -29 -28 -26 -24 -23 -22 -21 -20 -18 -16 -14 -14 -13 -12 -14 -18 -22 -25 -26 -26 -25 -25 -23 -23 -23 -23 -23 -23 -25 -25 -25 -26 -27 -27 -27 -28 -28 -28 -26 -23 -20 -18 -18 -18 -18 -19 -20 -22 -22 -22 -21 -20 -18 -15 -13 -11 -12 -14 -19 -23 -26 -23 -21 -20 -20 -19 -15 -13 -13 -15 -20 -23 -27 -30 -33 -35 -35 -36 -37 -37 -34 -32 -30 -29 -27 -28 -29 -30 -33 -36 -37 -36 -34 -33 -33 -31 -31 -31 -29 -28 -28 -28 -28 -31 -27 -23 -19 -18 -21 -22 -21 -20 -16 -14 -19 -26 -34 -40 -41 -40 -38 -35 -32 -33 -35 -36 -38 -38 -38 -38 -40 -43 -43 -42 -40 -38 -38 -43 -48 -52 -49 -41 -37 -35 -33 -31 -34 -38 -42 -45 -43 -43 -44 -46 -48 -46 -40 -33 -29 -29 -31 -35 -41 -45 -49 -46 -40 -34 -30 -29 -28 -26 -24 -24 -31 -35 -36 -34 -32 -29 -28 -27 -25 -23 -23 -24 -25 -27 -29 -32 -35 -36 -36 -36 -38 -11 -10 -9 -7 -7 -7 -8 -9 -9 -9 -8 -8 -7 -7 -7 -8 -8 -7 -7 -6 -6 -5 -3 -2 -1 -2 -3 -4 -5 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -4 -4 -4 -4 -4 -4 -4 -5 -6 -7 -8 -9 -9 -9 -8 -8 -6 -4 -2 -1 -1 1 2 2 3 3 3 3 3 3 4 5 5 6 6 7 7 8 8 8 8 9 9 9 9 9 10 10 10 10 10 10 11 13 14 16 18 20 20 19 17 15 13 12 12 12 11 11 11 11 11 11 11 13 13 12 11 9 9 8 7 7 6 6 6 6 6 7 9 10 10 11 11 12 11 9 5 -0 -4 -6 -7 -5 -3 -2 -2 -4 -5 -6 -6 -7 -8 -10 -11 -11 -10 -9 -8 -7 -6 -4 -3 -2 -1 0 0 -1 -4 -7 -8 -8 -6 -3 -2 -1 -0 0 1 2 2 1 -0 -1 -2 -2 -3 -3 -2 -1 -2 -1 -0 -1 -2 -5 -5 -6 -7 -8 -9 -8 -8 -7 -5 -4 -4 -3 -2 -2 -2 -2 -4 -6 -8 -9 -12 -16 -21 -25 -28 -28 -26 -23 -21 -21 -21 -20 -19 -18 -16 -16 -15 -14 -12 -13 -14 -16 -19 -20 -22 -24 -25 -25 -24 -23 -23 -23 -24 -25 -26 -26 -26 -28 -29 -29 -28 -28 -28 -27 -25 -21 -19 -18 -18 -18 -18 -20 -22 -23 -24 -24 -23 -20 -16 -13 -12 -14 -18 -22 -25 -25 -23 -21 -20 -20 -17 -14 -12 -10 -13 -17 -22 -26 -30 -33 -34 -36 -38 -38 -36 -34 -33 -32 -28 -28 -28 -28 -30 -33 -37 -38 -38 -36 -35 -34 -33 -34 -33 -31 -30 -30 -29 -31 -30 -27 -23 -18 -20 -21 -22 -22 -18 -15 -15 -20 -28 -36 -41 -43 -41 -38 -36 -35 -35 -36 -38 -37 -36 -36 -39 -44 -45 -44 -42 -40 -39 -42 -47 -51 -49 -42 -38 -36 -34 -32 -32 -36 -43 -49 -47 -47 -47 -47 -50 -50 -46 -39 -33 -31 -32 -35 -38 -41 -45 -45 -42 -37 -33 -30 -28 -27 -26 -26 -31 -35 -36 -36 -35 -33 -31 -29 -27 -25 -24 -24 -25 -27 -28 -31 -34 -37 -37 -36 -36 -11 -10 -9 -8 -7 -7 -7 -7 -7 -7 -6 -6 -6 -6 -6 -7 -7 -7 -6 -6 -5 -3 -2 -2 -2 -4 -6 -7 -8 -8 -8 -8 -6 -6 -6 -6 -5 -4 -4 -3 -4 -5 -7 -7 -6 -6 -8 -8 -8 -7 -8 -9 -8 -8 -6 -3 -1 1 2 2 3 4 4 4 4 5 5 5 4 3 4 4 4 4 5 6 6 6 7 7 7 7 8 7 7 6 5 4 2 1 2 3 6 9 12 14 16 16 14 12 10 9 8 9 10 10 10 9 9 9 9 10 11 12 12 12 12 12 11 11 10 10 9 8 8 9 10 10 11 12 13 14 16 16 15 12 8 2 -3 -6 -4 -1 0 1 0 -0 -2 -2 -3 -4 -5 -5 -5 -5 -5 -7 -7 -7 -6 -4 -2 -1 -0 1 1 -1 -4 -7 -8 -6 -5 -3 -2 -1 0 1 1 1 1 0 -1 -1 -1 -1 -1 -1 -1 -1 -2 -2 -2 -1 -2 -3 -4 -6 -8 -9 -9 -9 -9 -8 -6 -5 -4 -3 -2 -1 -0 -0 -1 -2 -3 -6 -9 -14 -19 -24 -26 -25 -22 -20 -19 -19 -19 -19 -19 -19 -18 -17 -16 -15 -13 -12 -12 -17 -19 -21 -23 -25 -26 -26 -24 -23 -23 -25 -26 -26 -26 -26 -27 -29 -29 -29 -28 -28 -28 -27 -26 -23 -21 -20 -19 -19 -20 -21 -23 -25 -26 -25 -24 -21 -18 -15 -16 -18 -21 -22 -23 -23 -22 -20 -20 -18 -16 -14 -10 -9 -11 -15 -20 -26 -31 -33 -35 -37 -37 -37 -36 -35 -35 -30 -29 -29 -29 -30 -33 -37 -40 -41 -39 -38 -37 -37 -37 -36 -34 -33 -32 -30 -32 -31 -30 -28 -21 -19 -19 -20 -22 -22 -18 -16 -17 -22 -32 -39 -43 -44 -42 -39 -38 -37 -38 -38 -37 -36 -36 -38 -43 -45 -44 -42 -41 -41 -43 -46 -49 -47 -43 -40 -38 -35 -33 -34 -36 -40 -46 -47 -47 -47 -46 -47 -49 -48 -44 -39 -35 -33 -34 -37 -41 -45 -45 -43 -40 -36 -32 -30 -29 -29 -29 -31 -34 -37 -39 -37 -36 -34 -31 -28 -26 -25 -24 -24 -27 -28 -30 -33 -37 -38 -37 -35 -10 -10 -9 -8 -8 -7 -7 -6 -5 -5 -5 -5 -5 -6 -6 -7 -7 -7 -6 -5 -4 -2 -2 -3 -4 -6 -8 -8 -8 -8 -7 -6 -5 -4 -4 -5 -5 -5 -6 -6 -7 -9 -9 -10 -10 -10 -10 -10 -9 -9 -10 -9 -8 -7 -6 -3 -3 -1 -0 0 -1 -1 -2 -2 -3 -3 -2 -2 -2 -3 -4 -4 -4 -4 -5 -4 -4 -4 -3 -3 -3 -3 -2 -2 -3 -4 -5 -6 -8 -11 -12 -11 -8 -4 -1 2 3 3 1 -1 -2 -3 -3 -1 1 3 5 6 7 8 9 9 9 9 9 10 11 11 11 11 11 11 11 11 11 12 12 12 12 12 13 14 16 17 17 15 13 8 2 -2 -3 -2 -0 1 2 4 3 1 1 2 2 -0 -1 -1 -1 -2 -3 -3 -3 -4 -4 -3 -2 -1 0 -2 -5 -7 -7 -5 -4 -3 -2 -1 0 1 0 -0 0 -1 -1 -1 -1 -0 -0 -1 -1 -0 -1 -1 -2 -2 -3 -3 -4 -4 -6 -6 -7 -8 -8 -9 -8 -6 -5 -4 -3 -3 -1 1 2 2 1 -1 -4 -8 -13 -18 -21 -22 -21 -20 -19 -17 -17 -18 -19 -19 -19 -19 -18 -17 -16 -15 -13 -14 -15 -17 -21 -25 -28 -29 -27 -24 -23 -24 -25 -26 -26 -26 -27 -29 -30 -30 -29 -30 -30 -30 -29 -28 -26 -24 -22 -20 -20 -20 -21 -23 -24 -26 -27 -26 -24 -21 -19 -19 -20 -20 -20 -20 -20 -20 -20 -18 -17 -15 -12 -9 -8 -9 -12 -18 -24 -28 -32 -34 -35 -36 -36 -37 -36 -34 -32 -30 -29 -29 -32 -36 -40 -43 -42 -41 -40 -39 -39 -39 -37 -35 -34 -32 -32 -32 -32 -30 -24 -19 -18 -19 -22 -23 -21 -19 -18 -18 -26 -35 -41 -45 -45 -43 -41 -40 -39 -39 -38 -37 -36 -37 -42 -44 -44 -44 -43 -43 -44 -44 -43 -43 -43 -43 -42 -37 -34 -35 -36 -37 -44 -48 -50 -48 -45 -43 -45 -47 -47 -46 -39 -35 -34 -36 -42 -45 -46 -45 -42 -39 -36 -33 -31 -30 -30 -31 -33 -37 -39 -39 -37 -35 -31 -28 -27 -25 -24 -24 -27 -28 -29 -31 -36 -38 -38 -36 -9 -9 -9 -9 -8 -7 -6 -5 -4 -4 -4 -5 -5 -6 -7 -7 -7 -6 -5 -3 -2 -3 -4 -6 -8 -9 -9 -8 -7 -7 -6 -4 -3 -4 -5 -6 -7 -8 -9 -10 -10 -11 -12 -12 -12 -11 -11 -10 -10 -10 -11 -11 -11 -12 -12 -12 -13 -12 -10 -9 -10 -10 -11 -12 -13 -13 -12 -12 -12 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -12 -13 -13 -12 -11 -11 -11 -12 -13 -14 -17 -19 -20 -17 -13 -11 -9 -9 -9 -10 -11 -12 -13 -13 -12 -10 -8 -6 -4 -1 1 4 6 8 8 8 8 8 9 10 11 11 13 14 15 15 15 15 14 13 12 12 13 14 15 16 15 13 9 4 0 -1 0 1 3 4 6 5 5 4 5 4 4 3 3 3 2 2 2 1 -3 -4 -3 -1 -1 -1 -2 -2 -2 -3 -2 -1 -0 1 1 1 1 1 0 -0 -1 -1 -1 -1 -1 -1 -0 0 0 0 0 0 -0 -1 -1 -2 -2 -3 -5 -5 -6 -7 -9 -9 -8 -6 -5 -4 -4 -3 -1 1 4 4 3 1 -2 -5 -9 -12 -15 -17 -19 -19 -18 -17 -16 -17 -19 -20 -20 -19 -18 -18 -17 -15 -15 -14 -14 -16 -19 -23 -25 -23 -21 -21 -22 -23 -25 -26 -27 -28 -29 -30 -31 -30 -30 -29 -28 -28 -29 -29 -27 -25 -22 -20 -19 -20 -21 -22 -24 -27 -29 -31 -28 -25 -22 -21 -19 -18 -17 -17 -19 -19 -18 -18 -17 -15 -11 -8 -7 -8 -13 -18 -24 -30 -34 -35 -36 -37 -38 -38 -36 -34 -32 -29 -29 -31 -34 -38 -42 -42 -42 -41 -40 -41 -40 -39 -37 -36 -34 -33 -32 -32 -31 -27 -22 -18 -18 -21 -24 -24 -23 -21 -18 -23 -31 -38 -44 -47 -46 -44 -43 -41 -41 -40 -38 -38 -37 -40 -41 -42 -44 -45 -44 -44 -42 -38 -38 -43 -47 -47 -40 -36 -35 -36 -36 -40 -46 -48 -47 -44 -43 -43 -45 -48 -50 -44 -38 -35 -35 -40 -44 -45 -45 -43 -41 -38 -35 -31 -31 -31 -31 -32 -35 -38 -39 -38 -36 -32 -29 -27 -26 -25 -26 -27 -28 -28 -29 -33 -37 -38 -37 -9 -9 -9 -8 -7 -6 -5 -4 -4 -5 -6 -6 -7 -7 -7 -7 -5 -4 -4 -3 -3 -4 -7 -8 -9 -9 -8 -7 -6 -6 -6 -5 -6 -7 -9 -10 -11 -10 -10 -10 -11 -12 -12 -11 -11 -10 -9 -10 -10 -12 -13 -14 -15 -17 -18 -19 -20 -20 -18 -17 -17 -18 -18 -19 -19 -19 -19 -19 -18 -17 -17 -17 -16 -16 -16 -16 -15 -15 -15 -14 -14 -14 -14 -14 -14 -13 -13 -13 -14 -15 -16 -17 -17 -15 -14 -13 -12 -12 -12 -13 -13 -14 -14 -14 -14 -14 -14 -13 -12 -10 -7 -2 2 5 7 7 7 8 9 10 11 13 14 15 15 15 15 14 13 13 13 13 14 14 15 14 12 9 5 2 3 3 3 3 3 4 4 4 3 4 5 6 6 5 4 3 3 4 5 4 4 3 4 5 4 2 -0 -1 -2 -2 -1 -0 1 1 2 2 2 2 1 1 0 -0 -1 -1 -1 -1 0 1 1 1 1 1 1 0 -1 -1 -1 -2 -3 -3 -4 -5 -7 -7 -6 -5 -4 -3 -3 -3 -2 1 2 3 4 3 1 -0 -3 -7 -12 -15 -18 -19 -17 -16 -16 -17 -18 -20 -20 -19 -19 -18 -17 -16 -14 -14 -14 -16 -17 -18 -19 -19 -20 -22 -23 -25 -26 -27 -28 -29 -30 -30 -30 -29 -28 -27 -27 -28 -29 -29 -28 -25 -22 -20 -19 -20 -22 -25 -27 -29 -30 -30 -29 -28 -24 -21 -19 -17 -16 -17 -18 -18 -18 -18 -17 -15 -12 -8 -6 -7 -12 -18 -25 -29 -32 -34 -35 -37 -37 -36 -36 -34 -31 -30 -30 -32 -36 -39 -41 -42 -41 -41 -41 -40 -39 -39 -38 -36 -34 -33 -32 -32 -30 -25 -21 -19 -21 -25 -26 -26 -24 -22 -22 -25 -31 -39 -45 -45 -45 -45 -43 -44 -43 -40 -39 -37 -37 -38 -41 -45 -47 -47 -45 -42 -38 -38 -42 -47 -49 -44 -39 -36 -35 -36 -37 -42 -45 -45 -44 -42 -42 -44 -48 -52 -48 -42 -37 -35 -37 -40 -43 -45 -43 -41 -39 -36 -32 -30 -30 -30 -30 -32 -36 -38 -38 -36 -33 -29 -27 -26 -26 -27 -27 -26 -25 -26 -29 -34 -37 -37 -9 -8 -7 -6 -5 -5 -5 -6 -7 -7 -7 -8 -7 -7 -7 -6 -4 -3 -4 -5 -6 -7 -9 -9 -8 -7 -5 -4 -5 -5 -6 -8 -11 -12 -12 -11 -12 -11 -10 -9 -9 -10 -9 -9 -9 -9 -9 -10 -12 -14 -15 -16 -18 -19 -20 -21 -22 -21 -21 -20 -20 -20 -21 -20 -21 -21 -21 -20 -19 -17 -16 -15 -15 -14 -14 -13 -12 -11 -11 -10 -10 -9 -9 -10 -10 -9 -9 -9 -10 -9 -10 -11 -11 -11 -10 -9 -8 -8 -7 -7 -8 -8 -8 -9 -10 -12 -13 -15 -17 -17 -16 -13 -7 -2 2 5 5 6 7 7 7 8 8 8 8 8 9 9 9 9 10 10 11 11 12 12 12 9 7 6 6 7 6 6 5 4 4 3 2 3 5 6 5 4 3 2 1 1 0 1 3 5 7 9 9 8 6 5 3 2 3 3 3 2 2 3 3 4 4 4 3 2 1 0 -0 -0 0 1 1 1 1 1 1 1 0 -0 0 -1 -1 -2 -2 -3 -4 -5 -5 -5 -4 -3 -3 -3 -3 -3 -1 2 4 5 5 4 2 -0 -5 -9 -14 -17 -17 -17 -16 -15 -16 -18 -19 -19 -19 -18 -18 -17 -16 -15 -15 -16 -15 -16 -17 -17 -19 -21 -22 -24 -25 -26 -28 -29 -29 -29 -30 -30 -29 -28 -27 -27 -29 -29 -30 -28 -25 -23 -21 -20 -22 -24 -25 -27 -28 -29 -29 -28 -27 -24 -22 -19 -17 -16 -17 -18 -18 -19 -19 -17 -15 -12 -8 -6 -8 -13 -20 -25 -29 -32 -33 -34 -37 -39 -39 -37 -33 -31 -30 -31 -33 -35 -39 -40 -41 -41 -41 -40 -40 -40 -39 -38 -36 -34 -32 -32 -31 -28 -25 -21 -22 -25 -27 -28 -28 -25 -23 -23 -25 -32 -41 -45 -47 -47 -47 -46 -45 -43 -39 -38 -36 -36 -39 -44 -47 -49 -48 -45 -41 -38 -40 -44 -46 -46 -42 -37 -34 -36 -36 -40 -44 -45 -45 -44 -44 -47 -51 -52 -49 -45 -40 -36 -35 -37 -41 -45 -45 -43 -42 -39 -34 -31 -29 -29 -29 -28 -33 -36 -37 -35 -33 -30 -28 -27 -27 -27 -27 -25 -24 -24 -28 -31 -35 -36 -8 -7 -6 -6 -6 -6 -7 -8 -8 -9 -9 -8 -7 -6 -5 -5 -5 -4 -6 -7 -8 -9 -10 -8 -7 -6 -4 -5 -6 -7 -8 -10 -14 -14 -12 -10 -10 -9 -8 -7 -7 -7 -8 -9 -10 -11 -11 -12 -14 -15 -16 -17 -18 -19 -20 -21 -21 -20 -19 -19 -19 -20 -19 -18 -18 -18 -18 -17 -16 -13 -12 -11 -10 -10 -10 -9 -8 -8 -8 -8 -8 -7 -7 -6 -6 -6 -5 -4 -5 -6 -7 -8 -8 -8 -6 -4 -2 -1 -1 -2 -2 -3 -2 -2 -2 -4 -5 -8 -11 -14 -15 -16 -14 -10 -6 -3 -1 -0 -1 -1 -2 -2 -3 -4 -4 -3 -2 -2 -1 -1 -0 1 2 3 5 7 7 7 7 7 8 8 8 7 7 6 5 4 3 3 4 5 4 3 3 3 2 1 -0 -1 1 2 3 5 7 8 8 6 3 3 4 4 4 3 3 3 3 3 4 4 4 4 3 4 4 3 3 2 2 1 1 1 1 1 0 -0 -0 -1 -1 -2 -2 -3 -3 -3 -4 -4 -3 -2 -2 -2 -3 -4 -4 -2 0 3 5 5 5 3 -0 -4 -9 -13 -16 -18 -18 -17 -15 -16 -17 -18 -19 -18 -18 -18 -18 -17 -16 -16 -15 -15 -16 -16 -18 -21 -22 -24 -24 -25 -26 -26 -26 -27 -28 -29 -28 -27 -26 -26 -27 -28 -30 -30 -29 -27 -24 -23 -23 -24 -24 -25 -26 -28 -30 -30 -30 -27 -24 -20 -17 -15 -16 -17 -18 -19 -19 -19 -18 -16 -12 -8 -6 -8 -12 -17 -22 -28 -33 -36 -36 -37 -37 -37 -36 -34 -31 -30 -30 -32 -35 -38 -40 -41 -41 -40 -40 -41 -41 -40 -38 -36 -33 -32 -31 -30 -27 -23 -22 -24 -27 -30 -30 -28 -25 -23 -22 -27 -35 -42 -46 -47 -47 -46 -45 -44 -43 -40 -37 -36 -36 -40 -45 -49 -49 -47 -42 -38 -39 -44 -47 -46 -43 -39 -35 -36 -37 -40 -43 -46 -46 -46 -46 -46 -49 -50 -49 -46 -42 -38 -36 -36 -39 -44 -45 -45 -44 -43 -38 -32 -30 -30 -30 -29 -31 -33 -35 -34 -32 -30 -29 -28 -27 -27 -27 -26 -25 -24 -27 -30 -32 -34 -6 -6 -6 -7 -8 -9 -9 -8 -9 -9 -8 -8 -6 -4 -4 -5 -6 -7 -9 -10 -10 -10 -9 -7 -7 -7 -8 -8 -9 -10 -10 -12 -13 -13 -12 -10 -8 -7 -6 -6 -7 -8 -9 -11 -12 -13 -14 -13 -14 -15 -17 -17 -18 -19 -20 -21 -21 -20 -19 -18 -16 -16 -15 -15 -15 -14 -13 -12 -11 -9 -8 -7 -7 -7 -8 -7 -7 -8 -9 -10 -10 -10 -9 -8 -8 -10 -11 -10 -11 -11 -11 -11 -12 -12 -9 -5 -1 1 1 -0 -2 -3 -2 -0 2 2 2 2 1 -1 -4 -7 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -10 -11 -11 -12 -12 -11 -11 -11 -11 -11 -10 -9 -7 -5 -3 -2 -1 1 3 3 4 4 5 5 5 5 4 4 4 4 3 3 4 4 4 3 2 1 0 -1 -1 -2 1 2 4 7 7 7 7 7 6 5 4 3 3 4 3 4 4 5 5 6 7 7 6 5 4 3 2 1 1 0 -0 -1 -1 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -3 -4 -4 -3 0 3 4 4 4 4 2 -1 -5 -9 -15 -19 -19 -16 -13 -15 -16 -17 -17 -18 -18 -18 -18 -18 -17 -16 -16 -16 -16 -18 -20 -21 -22 -22 -23 -24 -25 -25 -25 -26 -27 -27 -28 -26 -27 -29 -30 -31 -33 -33 -31 -28 -25 -24 -24 -24 -24 -25 -27 -29 -30 -32 -31 -28 -25 -21 -18 -16 -17 -18 -18 -19 -20 -20 -20 -17 -13 -8 -5 -6 -9 -14 -20 -26 -30 -32 -33 -34 -36 -37 -35 -34 -32 -29 -30 -31 -35 -38 -40 -40 -40 -40 -40 -41 -41 -40 -38 -36 -34 -33 -32 -30 -26 -23 -24 -27 -32 -32 -30 -28 -25 -22 -23 -29 -36 -43 -47 -47 -46 -45 -45 -44 -41 -39 -36 -35 -38 -43 -47 -49 -49 -44 -40 -39 -41 -44 -46 -44 -40 -35 -35 -37 -40 -43 -45 -46 -46 -45 -44 -46 -48 -48 -47 -44 -42 -39 -37 -38 -42 -45 -46 -46 -46 -41 -36 -32 -30 -30 -29 -28 -29 -31 -33 -32 -31 -29 -28 -27 -28 -28 -27 -25 -25 -27 -29 -30 -31 -6 -7 -8 -9 -10 -10 -9 -8 -8 -7 -7 -5 -4 -3 -4 -6 -9 -9 -11 -11 -11 -11 -9 -8 -8 -10 -12 -10 -10 -11 -11 -11 -11 -10 -9 -9 -9 -8 -6 -6 -8 -11 -11 -11 -12 -13 -15 -15 -15 -15 -15 -16 -17 -18 -18 -19 -19 -18 -17 -15 -14 -14 -14 -13 -13 -12 -10 -9 -7 -6 -5 -4 -4 -4 -4 -4 -5 -6 -8 -8 -8 -8 -9 -9 -9 -11 -13 -16 -17 -16 -15 -13 -12 -12 -11 -8 -3 0 2 2 -0 -2 -3 -1 2 4 6 8 8 8 7 5 3 1 -1 -4 -5 -6 -6 -5 -5 -5 -5 -6 -7 -8 -9 -10 -11 -12 -12 -13 -14 -15 -15 -15 -15 -14 -13 -11 -9 -7 -6 -5 -3 -2 -1 1 1 2 2 2 3 3 4 4 5 5 6 6 5 3 -0 -4 -4 -3 -2 1 4 6 7 8 8 7 6 5 5 5 4 3 2 2 2 4 6 7 9 8 7 6 4 4 3 2 1 0 -1 -2 -2 -3 -4 -4 -4 -5 -4 -4 -4 -4 -4 -3 -2 -2 -2 -3 -4 -2 1 2 2 3 4 5 5 3 -1 -8 -14 -18 -18 -15 -14 -14 -15 -16 -18 -18 -19 -20 -20 -20 -19 -18 -18 -17 -18 -19 -19 -19 -20 -21 -23 -23 -22 -22 -23 -24 -25 -27 -28 -29 -31 -33 -33 -34 -34 -33 -31 -27 -26 -25 -25 -24 -25 -26 -27 -30 -31 -31 -30 -28 -25 -21 -18 -17 -17 -19 -20 -20 -21 -21 -21 -19 -14 -8 -4 -4 -7 -12 -19 -25 -28 -31 -33 -35 -36 -35 -34 -33 -30 -30 -30 -31 -34 -37 -38 -39 -40 -40 -41 -42 -42 -40 -39 -37 -35 -33 -32 -29 -26 -26 -27 -30 -33 -31 -29 -27 -24 -22 -25 -31 -38 -44 -46 -46 -46 -45 -45 -43 -41 -38 -36 -36 -40 -46 -49 -48 -45 -41 -39 -38 -39 -42 -42 -40 -36 -34 -36 -38 -39 -42 -44 -43 -42 -41 -44 -46 -48 -48 -46 -44 -41 -38 -36 -39 -45 -48 -48 -47 -43 -39 -35 -32 -30 -29 -28 -28 -29 -32 -32 -30 -29 -28 -28 -28 -29 -29 -27 -26 -27 -29 -29 -30 -7 -8 -9 -10 -10 -10 -9 -7 -6 -5 -4 -3 -4 -6 -7 -8 -10 -10 -12 -13 -13 -11 -9 -8 -10 -12 -12 -10 -10 -10 -10 -9 -8 -7 -6 -7 -8 -9 -10 -10 -11 -13 -12 -12 -12 -12 -13 -13 -14 -15 -15 -16 -16 -16 -15 -15 -15 -14 -13 -12 -12 -11 -11 -11 -11 -10 -9 -7 -6 -5 -4 -4 -4 -4 -4 -4 -5 -6 -7 -7 -7 -7 -7 -9 -10 -11 -12 -14 -15 -12 -9 -7 -5 -4 -5 -5 -4 -2 2 4 4 2 -0 0 1 2 3 6 7 8 8 9 9 8 7 5 4 4 4 5 5 5 5 4 2 1 -1 -2 -3 -4 -5 -6 -7 -9 -11 -13 -15 -16 -16 -16 -15 -15 -14 -14 -14 -12 -10 -8 -6 -5 -4 -3 -1 1 2 4 5 7 9 11 12 10 6 -1 -4 -5 -5 -4 -1 1 3 5 6 7 7 7 7 6 5 3 1 -0 -1 0 2 4 6 7 8 8 7 7 7 7 6 6 5 3 0 -2 -5 -5 -6 -6 -6 -5 -6 -6 -6 -5 -3 -1 -0 -1 -3 -2 -1 -1 -1 -0 3 6 7 6 3 -2 -8 -12 -16 -16 -14 -13 -13 -14 -15 -17 -19 -20 -19 -20 -20 -20 -20 -19 -18 -18 -18 -17 -18 -19 -21 -21 -21 -21 -21 -22 -24 -26 -29 -31 -32 -33 -33 -35 -36 -36 -35 -34 -32 -29 -28 -25 -26 -27 -27 -29 -30 -30 -29 -29 -28 -26 -23 -20 -19 -20 -20 -21 -21 -21 -22 -22 -19 -14 -7 -3 -3 -6 -12 -19 -24 -28 -30 -32 -34 -35 -35 -35 -33 -31 -29 -28 -30 -33 -36 -38 -40 -41 -43 -44 -44 -43 -43 -40 -38 -35 -34 -31 -28 -26 -27 -29 -31 -31 -31 -30 -27 -24 -23 -26 -32 -39 -43 -44 -44 -43 -44 -44 -43 -40 -37 -35 -38 -42 -47 -47 -45 -43 -40 -36 -36 -38 -40 -40 -37 -35 -35 -36 -38 -40 -40 -40 -39 -39 -41 -44 -46 -47 -47 -46 -44 -41 -38 -39 -43 -45 -47 -47 -45 -42 -38 -34 -31 -30 -28 -27 -28 -31 -32 -32 -31 -29 -28 -29 -29 -30 -28 -27 -28 -28 -29 -29 -8 -9 -9 -9 -9 -8 -8 -6 -5 -4 -3 -4 -7 -12 -12 -10 -10 -10 -12 -13 -13 -12 -10 -9 -9 -9 -9 -9 -8 -7 -6 -5 -5 -6 -7 -8 -10 -10 -11 -11 -11 -11 -11 -11 -12 -12 -12 -12 -13 -13 -14 -15 -15 -15 -13 -12 -12 -11 -11 -10 -9 -9 -9 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -10 -10 -11 -11 -10 -9 -9 -8 -8 -8 -8 -7 -7 -4 -1 1 1 0 -2 -5 -8 -9 -5 -0 3 3 2 2 1 -1 -3 -2 -1 0 2 4 6 8 9 9 9 9 9 9 10 9 9 8 7 5 3 2 2 1 -0 -1 -2 -3 -5 -6 -8 -10 -11 -13 -13 -13 -14 -15 -16 -16 -15 -14 -12 -11 -11 -11 -10 -8 -5 -2 0 2 5 9 13 14 12 6 2 0 -0 -1 -1 -0 0 2 2 4 6 6 7 7 6 4 1 -1 -2 -3 -2 -1 1 3 5 7 7 7 7 7 8 8 8 7 5 2 -0 -3 -4 -5 -6 -5 -6 -7 -8 -7 -6 -4 -1 -0 -1 0 -1 -3 -3 -3 -0 2 4 5 4 1 -2 -5 -9 -12 -14 -14 -13 -14 -14 -16 -17 -19 -19 -19 -19 -19 -18 -18 -18 -18 -17 -17 -16 -17 -19 -20 -21 -21 -22 -22 -23 -25 -28 -30 -31 -32 -33 -35 -37 -39 -39 -37 -35 -33 -32 -30 -29 -28 -27 -27 -28 -29 -29 -30 -31 -31 -29 -26 -24 -23 -22 -22 -22 -22 -23 -24 -24 -21 -14 -6 -1 -1 -3 -10 -17 -23 -27 -29 -32 -34 -35 -35 -34 -32 -29 -26 -26 -29 -34 -38 -40 -40 -42 -44 -45 -45 -46 -44 -41 -38 -35 -32 -29 -26 -26 -28 -30 -32 -32 -30 -28 -26 -23 -22 -24 -33 -37 -40 -42 -42 -44 -45 -44 -42 -39 -37 -37 -38 -42 -44 -46 -46 -42 -36 -34 -36 -38 -39 -38 -36 -36 -36 -37 -38 -38 -38 -38 -37 -38 -40 -42 -44 -46 -47 -46 -44 -41 -39 -40 -43 -46 -46 -46 -44 -41 -36 -32 -30 -29 -28 -27 -30 -33 -35 -34 -31 -30 -30 -29 -29 -28 -28 -28 -27 -28 -28 -7 -8 -7 -7 -7 -7 -7 -7 -6 -6 -7 -9 -11 -13 -12 -10 -10 -10 -11 -12 -12 -11 -10 -8 -7 -7 -7 -7 -5 -4 -4 -6 -7 -9 -9 -9 -9 -9 -9 -9 -9 -9 -10 -10 -11 -11 -11 -11 -11 -12 -13 -12 -13 -12 -11 -10 -10 -10 -9 -9 -8 -8 -8 -8 -9 -9 -10 -11 -12 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -13 -12 -10 -7 -5 -3 -2 -0 1 2 3 3 1 -3 -7 -12 -16 -20 -18 -13 -7 -3 -1 1 1 -2 -6 -9 -9 -8 -7 -4 -1 2 4 6 7 7 7 7 7 6 6 5 5 4 2 1 1 0 0 0 0 -0 -1 -2 -4 -5 -6 -8 -9 -11 -12 -13 -14 -15 -15 -15 -14 -13 -13 -13 -13 -13 -12 -10 -9 -7 -3 -0 4 8 11 12 11 10 9 7 6 4 3 1 0 1 2 3 4 5 5 5 3 0 -1 -3 -4 -4 -3 -2 0 2 4 4 4 6 8 9 10 11 10 7 3 0 -1 -3 -5 -5 -7 -8 -8 -9 -8 -7 -5 -2 -0 2 1 -2 -4 -5 -4 -2 -0 1 2 2 1 -0 -2 -7 -11 -13 -14 -14 -15 -15 -16 -18 -18 -19 -19 -18 -19 -18 -19 -19 -18 -18 -16 -16 -17 -18 -19 -20 -21 -21 -22 -23 -26 -28 -30 -31 -33 -35 -37 -39 -39 -39 -37 -35 -33 -31 -30 -28 -27 -26 -27 -28 -29 -30 -32 -34 -34 -32 -29 -27 -25 -25 -24 -24 -24 -25 -26 -26 -24 -14 -6 -2 -0 -5 -11 -18 -23 -26 -28 -30 -32 -33 -34 -33 -30 -27 -25 -26 -29 -33 -37 -39 -42 -44 -45 -47 -48 -47 -45 -41 -38 -34 -30 -27 -25 -26 -30 -32 -33 -32 -30 -27 -23 -20 -19 -26 -32 -36 -40 -41 -44 -45 -45 -44 -41 -38 -37 -37 -39 -43 -47 -47 -43 -36 -34 -35 -37 -39 -39 -39 -38 -36 -36 -36 -38 -38 -37 -34 -34 -36 -39 -42 -45 -46 -46 -45 -43 -41 -41 -43 -46 -47 -48 -47 -45 -39 -34 -31 -29 -28 -27 -29 -33 -36 -36 -33 -32 -31 -30 -30 -28 -27 -27 -27 -26 -27 -7 -7 -7 -7 -7 -8 -9 -9 -10 -10 -11 -11 -12 -13 -12 -11 -10 -10 -10 -10 -11 -11 -9 -7 -5 -6 -6 -6 -6 -6 -7 -9 -10 -10 -9 -9 -8 -8 -7 -8 -8 -8 -9 -10 -10 -10 -10 -10 -10 -10 -11 -11 -11 -11 -10 -10 -10 -9 -9 -9 -8 -8 -9 -9 -10 -11 -12 -14 -15 -16 -16 -15 -15 -15 -14 -14 -14 -14 -13 -12 -12 -11 -8 -4 -1 1 2 2 3 2 0 -2 -6 -10 -15 -20 -25 -30 -30 -25 -18 -13 -10 -4 0 1 -3 -8 -11 -12 -11 -10 -8 -5 -2 -0 1 1 1 1 0 0 -0 -0 -0 0 -0 -1 -1 -0 1 2 2 2 1 1 -0 -1 -2 -3 -5 -7 -9 -10 -11 -13 -13 -14 -13 -12 -12 -11 -11 -12 -12 -12 -13 -12 -11 -10 -8 -5 -2 2 4 6 8 10 11 11 10 7 4 2 1 0 1 2 4 5 5 3 2 -0 -2 -3 -3 -3 -3 -2 -1 -0 1 3 6 8 10 12 13 12 10 7 4 2 -1 -2 -4 -5 -7 -9 -10 -9 -7 -5 -2 -1 -0 -1 -3 -4 -4 -4 -3 -2 -0 2 3 2 1 -2 -6 -10 -12 -14 -15 -15 -16 -17 -18 -19 -19 -18 -19 -18 -17 -18 -19 -19 -18 -17 -17 -17 -17 -17 -18 -20 -20 -22 -24 -26 -29 -30 -33 -34 -34 -36 -37 -38 -39 -39 -36 -34 -31 -29 -28 -28 -28 -27 -28 -28 -31 -33 -35 -35 -33 -31 -29 -28 -27 -26 -25 -25 -26 -28 -28 -22 -14 -7 -3 -3 -7 -12 -17 -21 -24 -26 -28 -30 -32 -33 -32 -30 -27 -26 -27 -31 -34 -37 -41 -43 -45 -47 -49 -49 -47 -44 -40 -36 -32 -29 -26 -26 -28 -31 -33 -33 -32 -29 -26 -22 -19 -20 -25 -31 -37 -40 -44 -46 -46 -45 -43 -40 -38 -37 -37 -41 -44 -46 -43 -39 -36 -36 -37 -39 -40 -41 -39 -36 -34 -35 -36 -37 -36 -33 -32 -33 -36 -40 -43 -45 -45 -45 -45 -43 -43 -44 -46 -47 -47 -48 -47 -42 -37 -32 -30 -29 -27 -28 -31 -34 -35 -33 -33 -33 -32 -32 -30 -29 -28 -28 -26 -26 -6 -6 -7 -7 -8 -9 -10 -11 -12 -13 -13 -13 -12 -12 -13 -12 -10 -10 -10 -12 -13 -13 -9 -6 -6 -6 -7 -7 -8 -8 -9 -10 -10 -9 -8 -8 -7 -7 -7 -7 -7 -8 -9 -9 -9 -9 -8 -9 -9 -9 -8 -10 -11 -11 -10 -10 -10 -10 -10 -9 -9 -9 -10 -10 -11 -12 -12 -13 -13 -14 -13 -13 -12 -11 -11 -11 -11 -10 -10 -9 -8 -6 -4 -2 -1 -0 -1 -2 -4 -6 -8 -10 -12 -15 -19 -24 -29 -33 -32 -28 -24 -20 -19 -15 -6 2 4 -1 -5 -8 -9 -9 -9 -8 -6 -5 -4 -3 -3 -3 -2 -2 -2 -2 -1 -1 -0 -0 1 2 3 4 5 5 5 5 4 4 4 3 1 -2 -4 -6 -7 -8 -9 -10 -11 -10 -10 -9 -8 -8 -8 -9 -10 -10 -10 -11 -12 -12 -11 -9 -7 -4 -0 4 7 10 11 11 10 8 5 2 1 1 2 3 3 4 3 2 -0 -1 -0 -1 -2 -3 -3 -3 -1 1 2 4 7 9 12 14 14 12 9 7 5 3 0 -2 -4 -6 -9 -9 -8 -7 -6 -7 -6 -5 -4 -3 -2 -1 -1 -2 -1 0 1 2 2 2 -1 -4 -8 -11 -13 -14 -15 -16 -17 -18 -19 -20 -20 -20 -18 -17 -17 -18 -19 -19 -18 -17 -16 -16 -16 -17 -18 -20 -22 -24 -28 -30 -33 -33 -33 -34 -35 -37 -39 -40 -39 -37 -34 -32 -30 -29 -28 -27 -27 -27 -28 -30 -33 -35 -36 -35 -33 -31 -29 -27 -25 -25 -26 -29 -31 -28 -22 -15 -9 -4 -4 -6 -10 -15 -20 -23 -25 -26 -28 -31 -32 -32 -30 -27 -27 -29 -33 -36 -39 -42 -43 -44 -47 -48 -48 -45 -40 -37 -35 -32 -28 -27 -27 -29 -31 -33 -32 -30 -28 -25 -21 -19 -20 -26 -35 -42 -46 -47 -47 -47 -45 -43 -40 -38 -37 -39 -41 -42 -42 -40 -38 -37 -37 -40 -41 -41 -39 -35 -33 -33 -35 -36 -35 -32 -31 -32 -34 -38 -42 -45 -46 -46 -46 -45 -44 -44 -45 -46 -47 -48 -47 -43 -39 -36 -33 -31 -28 -26 -27 -30 -31 -32 -33 -34 -33 -32 -30 -29 -28 -27 -26 -26 -6 -7 -8 -8 -9 -10 -11 -12 -13 -13 -14 -14 -14 -13 -13 -12 -12 -12 -12 -13 -14 -13 -8 -6 -7 -8 -9 -10 -10 -9 -9 -9 -9 -8 -7 -7 -6 -6 -6 -7 -7 -8 -8 -8 -8 -7 -7 -7 -8 -7 -6 -8 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -9 -9 -8 -8 -7 -7 -7 -8 -8 -8 -8 -7 -6 -5 -4 -4 -4 -6 -8 -10 -12 -13 -14 -14 -14 -15 -19 -22 -25 -26 -25 -23 -20 -19 -20 -20 -16 -8 3 7 4 1 -2 -3 -2 -2 -2 -2 -1 -1 -0 0 1 1 2 2 2 3 4 4 5 6 7 8 8 9 9 10 10 10 11 10 8 5 3 1 -1 -2 -4 -5 -6 -6 -7 -6 -6 -5 -5 -5 -5 -6 -6 -7 -9 -11 -11 -12 -13 -12 -10 -7 -4 1 5 8 10 11 10 8 6 5 4 3 2 1 -0 -1 -1 -0 2 3 2 1 -0 -3 -2 -2 -1 1 3 5 8 11 12 12 12 11 10 9 6 3 0 -2 -6 -7 -7 -7 -9 -12 -12 -10 -7 -5 -4 -2 -2 -2 -1 -1 -0 1 2 4 4 2 -1 -5 -9 -11 -13 -14 -15 -16 -18 -20 -23 -26 -25 -20 -16 -16 -17 -20 -21 -21 -19 -17 -15 -15 -16 -19 -22 -25 -28 -30 -33 -34 -33 -32 -33 -36 -38 -41 -41 -40 -38 -36 -32 -30 -29 -28 -27 -26 -26 -28 -31 -34 -37 -37 -36 -33 -30 -27 -25 -25 -27 -29 -31 -32 -29 -24 -18 -11 -6 -5 -6 -10 -14 -17 -19 -21 -23 -26 -30 -32 -32 -29 -27 -27 -32 -35 -37 -40 -41 -41 -43 -45 -46 -46 -44 -41 -39 -35 -31 -28 -27 -28 -29 -32 -32 -31 -30 -28 -24 -21 -20 -23 -31 -39 -45 -48 -49 -48 -48 -46 -43 -40 -38 -37 -38 -39 -40 -40 -39 -38 -38 -40 -41 -40 -38 -35 -33 -33 -34 -34 -33 -31 -30 -31 -33 -38 -42 -45 -47 -48 -47 -46 -44 -43 -44 -46 -47 -47 -46 -44 -42 -39 -37 -33 -29 -26 -24 -25 -28 -31 -33 -35 -33 -31 -29 -28 -28 -27 -25 -25 -8 -9 -9 -10 -10 -10 -11 -11 -12 -12 -13 -13 -13 -12 -12 -13 -13 -13 -13 -13 -13 -12 -9 -10 -10 -11 -12 -11 -9 -8 -8 -7 -7 -7 -7 -6 -6 -6 -6 -7 -7 -6 -6 -6 -6 -6 -7 -7 -6 -6 -6 -7 -8 -8 -9 -10 -10 -10 -10 -10 -9 -9 -8 -8 -8 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -6 -7 -8 -9 -9 -10 -11 -12 -12 -12 -12 -12 -13 -14 -16 -17 -17 -17 -17 -16 -15 -15 -17 -18 -17 -11 -2 2 3 2 0 1 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 5 5 5 6 7 8 9 10 11 12 14 14 13 12 10 8 7 5 4 2 1 -0 -1 -2 -2 -3 -3 -3 -3 -2 -2 -3 -4 -6 -7 -9 -11 -12 -13 -13 -12 -10 -6 -2 2 5 7 8 9 8 6 5 3 2 2 2 1 2 3 3 3 2 1 -0 -1 -2 -3 -2 -1 1 3 6 7 9 10 11 11 12 11 9 6 3 -1 -2 -3 -5 -7 -11 -13 -12 -8 -8 -8 -7 -5 -4 -2 -2 -1 0 1 2 4 6 5 2 -2 -6 -9 -10 -12 -13 -16 -19 -25 -32 -31 -23 -14 -13 -15 -18 -21 -23 -22 -20 -18 -16 -16 -18 -20 -22 -26 -29 -33 -34 -32 -32 -33 -35 -38 -40 -42 -42 -41 -39 -35 -32 -31 -29 -27 -26 -25 -26 -28 -31 -33 -35 -36 -35 -32 -28 -26 -25 -26 -27 -30 -32 -32 -31 -26 -19 -13 -8 -5 -6 -8 -11 -13 -15 -18 -21 -25 -30 -32 -31 -29 -27 -30 -31 -33 -36 -38 -39 -40 -42 -44 -46 -45 -44 -41 -38 -34 -31 -28 -26 -28 -31 -32 -33 -33 -32 -29 -26 -23 -23 -29 -37 -43 -47 -48 -49 -49 -48 -46 -42 -39 -37 -36 -36 -38 -39 -39 -39 -39 -39 -39 -39 -39 -36 -33 -32 -32 -32 -30 -29 -29 -30 -31 -35 -40 -45 -48 -49 -49 -48 -46 -44 -44 -45 -46 -46 -45 -44 -43 -42 -40 -34 -30 -27 -25 -23 -25 -30 -33 -34 -33 -31 -29 -28 -28 -27 -25 -25 -10 -10 -10 -10 -10 -9 -9 -9 -9 -10 -11 -11 -12 -11 -11 -12 -12 -12 -12 -12 -11 -11 -12 -15 -14 -13 -12 -11 -8 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -6 -6 -7 -7 -8 -9 -9 -8 -8 -8 -9 -9 -9 -10 -10 -10 -9 -9 -8 -7 -7 -6 -6 -6 -5 -5 -5 -4 -5 -5 -5 -4 -4 -4 -3 -3 -2 -3 -4 -6 -8 -9 -9 -9 -8 -7 -7 -7 -8 -8 -9 -10 -12 -13 -14 -14 -15 -15 -14 -14 -13 -14 -16 -17 -18 -14 -10 -7 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -6 -6 -5 -5 -5 -5 -5 -5 -6 -6 -6 -5 -4 -3 -1 0 2 3 5 7 9 11 12 12 12 11 10 9 8 7 7 6 4 2 2 1 1 -0 -0 -1 -1 -2 -3 -4 -6 -7 -9 -11 -14 -15 -14 -13 -9 -5 -1 2 5 6 6 5 5 5 6 5 5 5 5 4 4 3 2 0 0 -0 -0 -0 -0 -0 0 1 2 4 7 9 10 12 12 12 11 9 6 4 2 -0 -2 -5 -8 -9 -9 -9 -10 -10 -9 -8 -5 -4 -3 -2 -1 0 1 2 4 3 1 -1 -3 -5 -7 -9 -11 -16 -23 -32 -32 -25 -15 -13 -13 -16 -19 -22 -24 -23 -21 -19 -17 -18 -19 -20 -24 -27 -30 -32 -32 -33 -34 -35 -37 -39 -41 -42 -41 -40 -38 -35 -33 -31 -30 -29 -27 -26 -26 -28 -29 -31 -31 -31 -29 -28 -27 -27 -26 -26 -28 -31 -33 -35 -32 -26 -20 -14 -9 -6 -5 -6 -8 -11 -13 -16 -19 -25 -29 -32 -31 -28 -29 -28 -29 -32 -35 -37 -38 -39 -41 -44 -46 -45 -43 -39 -36 -33 -30 -28 -27 -30 -33 -35 -35 -35 -33 -31 -28 -25 -26 -32 -38 -43 -45 -47 -47 -48 -47 -44 -41 -39 -37 -36 -37 -38 -39 -39 -39 -39 -38 -38 -39 -36 -34 -32 -31 -30 -29 -29 -28 -28 -29 -32 -36 -42 -45 -46 -48 -48 -47 -45 -44 -44 -45 -45 -46 -44 -42 -42 -41 -36 -32 -29 -28 -24 -25 -30 -34 -34 -33 -32 -29 -27 -28 -27 -26 -26 -10 -9 -9 -8 -8 -7 -7 -7 -7 -7 -9 -10 -11 -11 -10 -10 -9 -9 -11 -11 -11 -13 -15 -16 -15 -12 -10 -10 -7 -5 -5 -5 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -6 -8 -9 -10 -11 -12 -11 -10 -9 -9 -9 -9 -9 -9 -9 -9 -8 -7 -7 -6 -6 -5 -5 -5 -4 -4 -4 -3 -3 -3 -3 -3 -3 -2 -2 -1 -2 -3 -5 -6 -7 -7 -7 -6 -4 -3 -3 -4 -4 -5 -7 -9 -11 -12 -13 -14 -14 -13 -12 -11 -11 -11 -13 -15 -18 -17 -16 -14 -13 -13 -13 -13 -12 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -13 -14 -14 -13 -13 -13 -12 -12 -10 -10 -9 -8 -7 -5 -2 1 5 8 10 12 12 13 13 13 13 12 10 9 9 8 6 4 2 1 -1 -1 -2 -2 -2 -3 -5 -8 -11 -14 -15 -16 -14 -12 -8 -4 -2 0 2 3 5 6 7 8 8 7 6 5 4 2 1 -0 -1 -1 -0 -0 -0 -0 0 1 1 3 4 6 7 9 11 12 11 10 9 8 6 3 0 -3 -5 -6 -8 -10 -11 -12 -12 -9 -7 -6 -5 -4 -3 -2 -1 1 4 5 5 4 2 -0 -2 -5 -9 -18 -27 -30 -27 -19 -16 -15 -15 -17 -20 -22 -24 -24 -23 -21 -20 -19 -19 -21 -24 -27 -30 -32 -34 -36 -37 -39 -40 -40 -41 -41 -40 -39 -37 -35 -34 -33 -31 -29 -28 -27 -27 -27 -26 -26 -27 -29 -29 -29 -27 -25 -24 -26 -29 -32 -35 -35 -32 -27 -22 -16 -11 -7 -5 -5 -7 -8 -9 -11 -16 -22 -27 -31 -29 -30 -29 -30 -32 -34 -34 -35 -37 -38 -41 -45 -46 -45 -42 -39 -36 -32 -29 -28 -30 -33 -36 -36 -37 -36 -34 -32 -28 -25 -26 -31 -37 -42 -44 -47 -48 -48 -45 -43 -42 -40 -38 -38 -39 -39 -39 -39 -38 -38 -39 -39 -37 -35 -33 -32 -31 -30 -29 -28 -27 -27 -30 -34 -39 -43 -44 -46 -47 -46 -45 -45 -45 -45 -45 -46 -44 -42 -41 -41 -37 -34 -31 -29 -26 -25 -28 -33 -34 -34 -33 -30 -27 -28 -27 -27 -27 -8 -7 -6 -6 -7 -6 -5 -5 -6 -6 -8 -10 -11 -11 -9 -7 -6 -8 -9 -10 -12 -14 -15 -14 -11 -8 -6 -6 -5 -5 -5 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -6 -7 -9 -10 -11 -12 -12 -12 -11 -9 -8 -8 -8 -8 -8 -8 -7 -7 -6 -6 -5 -5 -5 -4 -4 -4 -3 -3 -2 -2 -2 -2 -3 -3 -3 -2 -2 -3 -4 -5 -5 -5 -4 -4 -3 -3 -2 -3 -3 -3 -4 -5 -7 -9 -11 -12 -13 -12 -11 -10 -9 -10 -10 -11 -12 -14 -15 -16 -17 -17 -16 -16 -16 -15 -14 -13 -13 -12 -12 -12 -12 -12 -12 -12 -12 -12 -13 -13 -14 -14 -13 -13 -13 -12 -12 -13 -13 -13 -14 -14 -12 -10 -8 -4 -1 2 4 6 8 9 10 11 11 12 13 14 14 12 9 6 4 2 1 0 0 0 -0 -2 -4 -7 -10 -14 -16 -16 -15 -13 -11 -7 -4 -2 0 2 5 8 9 9 8 7 6 5 4 2 1 1 1 0 -1 -1 -1 -0 0 1 2 2 3 5 6 9 11 12 13 12 7 6 4 2 -0 -2 -4 -8 -10 -12 -13 -12 -11 -10 -10 -8 -6 -5 -4 -2 1 3 6 7 6 4 2 -0 -3 -9 -17 -24 -26 -23 -21 -19 -17 -16 -18 -20 -22 -24 -25 -25 -23 -22 -20 -21 -22 -24 -26 -29 -32 -34 -36 -37 -38 -40 -41 -42 -40 -40 -39 -38 -36 -35 -33 -32 -31 -29 -27 -24 -22 -22 -24 -27 -29 -30 -29 -27 -25 -25 -26 -29 -34 -36 -35 -33 -29 -24 -18 -13 -9 -5 -6 -6 -5 -7 -10 -15 -22 -27 -29 -30 -29 -29 -30 -32 -33 -34 -35 -35 -38 -42 -45 -46 -45 -42 -38 -34 -31 -29 -29 -32 -36 -37 -37 -37 -36 -34 -30 -25 -23 -24 -30 -37 -41 -43 -45 -46 -45 -45 -44 -42 -40 -39 -40 -41 -40 -39 -38 -37 -38 -39 -39 -37 -35 -33 -31 -30 -30 -29 -29 -28 -29 -33 -39 -42 -43 -44 -45 -45 -45 -45 -45 -44 -44 -46 -45 -43 -42 -42 -40 -37 -33 -29 -27 -26 -27 -30 -33 -34 -33 -31 -28 -28 -28 -27 -27 -7 -6 -5 -5 -6 -5 -5 -5 -5 -6 -8 -9 -10 -10 -7 -6 -7 -8 -7 -9 -11 -13 -12 -10 -7 -5 -4 -5 -5 -5 -6 -6 -6 -6 -5 -5 -4 -4 -5 -5 -5 -6 -8 -9 -11 -11 -12 -11 -11 -10 -9 -8 -8 -7 -7 -7 -7 -6 -6 -6 -5 -5 -5 -4 -4 -4 -3 -3 -3 -3 -2 -2 -2 -2 -3 -3 -4 -4 -4 -4 -4 -4 -3 -2 -2 -1 -2 -2 -2 -3 -3 -3 -3 -4 -5 -7 -8 -8 -8 -8 -8 -9 -11 -11 -11 -12 -13 -13 -14 -16 -16 -16 -16 -15 -14 -13 -11 -10 -9 -8 -7 -6 -6 -6 -6 -6 -6 -7 -7 -8 -8 -8 -8 -8 -7 -7 -8 -9 -11 -12 -13 -14 -14 -13 -12 -9 -7 -5 -4 -2 -1 1 2 3 5 7 9 12 14 14 14 12 10 8 6 4 3 2 1 0 -2 -4 -7 -10 -13 -14 -16 -15 -13 -10 -9 -6 -3 -1 2 5 6 7 7 8 8 8 7 5 4 3 2 0 -1 -2 -1 -1 -0 0 1 1 1 2 3 6 7 9 11 8 7 7 7 5 3 -0 -4 -7 -10 -12 -13 -13 -13 -14 -12 -10 -9 -7 -6 -4 -2 1 4 5 5 3 2 0 -2 -9 -16 -22 -25 -25 -24 -23 -20 -19 -19 -21 -23 -25 -27 -28 -26 -24 -22 -20 -20 -22 -24 -27 -30 -33 -36 -39 -41 -43 -43 -42 -41 -40 -39 -39 -38 -36 -34 -33 -31 -29 -24 -21 -21 -21 -25 -28 -30 -31 -30 -28 -27 -26 -28 -32 -35 -37 -37 -34 -29 -25 -20 -15 -8 -7 -6 -5 -6 -6 -9 -15 -21 -25 -27 -28 -29 -29 -30 -31 -32 -33 -34 -35 -39 -43 -46 -47 -45 -41 -38 -34 -31 -30 -32 -34 -36 -37 -36 -36 -35 -32 -27 -23 -21 -23 -31 -37 -41 -43 -45 -45 -45 -45 -44 -42 -41 -41 -42 -42 -39 -38 -37 -38 -40 -40 -39 -36 -33 -32 -31 -31 -31 -32 -30 -30 -32 -38 -41 -41 -42 -43 -43 -43 -43 -43 -43 -43 -45 -46 -44 -42 -43 -42 -40 -36 -31 -29 -28 -28 -28 -31 -34 -34 -32 -29 -28 -28 -27 -27 -7 -6 -6 -5 -5 -4 -4 -4 -6 -7 -8 -8 -8 -8 -7 -8 -8 -8 -7 -9 -10 -10 -9 -7 -4 -4 -4 -5 -6 -6 -6 -6 -6 -5 -4 -4 -4 -4 -5 -5 -5 -6 -8 -9 -10 -10 -10 -10 -9 -9 -8 -7 -7 -7 -7 -6 -6 -6 -6 -5 -5 -5 -5 -4 -3 -3 -3 -4 -4 -5 -4 -3 -2 -2 -2 -3 -4 -4 -4 -3 -3 -2 -1 0 0 0 1 1 1 1 1 1 1 0 -1 -3 -4 -4 -5 -7 -9 -11 -14 -15 -15 -15 -15 -14 -14 -15 -15 -16 -16 -15 -14 -12 -10 -8 -6 -4 -2 -1 -0 -0 -1 -1 -1 -1 -1 -2 -2 -2 -2 -2 -1 -1 -1 -3 -4 -5 -6 -7 -9 -10 -10 -10 -10 -9 -9 -8 -7 -6 -6 -6 -6 -4 -2 1 5 8 11 13 14 13 11 9 8 7 6 5 3 0 -2 -4 -6 -8 -11 -13 -13 -12 -11 -9 -7 -6 -4 -3 -1 2 4 6 8 9 10 10 9 8 6 4 1 -1 -2 -2 -1 -1 -1 -1 -2 -2 -2 0 2 5 7 5 6 6 6 6 5 3 -0 -3 -6 -7 -10 -12 -13 -16 -15 -14 -14 -12 -9 -8 -6 -5 -2 1 2 3 3 3 4 1 -6 -14 -19 -23 -25 -26 -25 -23 -21 -21 -22 -25 -28 -29 -29 -26 -24 -21 -19 -18 -19 -21 -23 -27 -31 -36 -40 -43 -44 -42 -41 -40 -39 -39 -39 -37 -36 -35 -33 -32 -29 -25 -22 -20 -22 -25 -29 -32 -33 -32 -30 -29 -30 -33 -36 -37 -39 -37 -34 -31 -27 -22 -16 -13 -10 -8 -8 -5 -6 -9 -14 -20 -23 -26 -27 -26 -27 -29 -31 -33 -33 -34 -37 -41 -44 -47 -47 -45 -41 -38 -34 -32 -31 -32 -34 -35 -35 -36 -35 -33 -31 -27 -23 -21 -25 -32 -38 -42 -45 -46 -46 -46 -46 -44 -42 -41 -41 -42 -41 -40 -40 -40 -41 -41 -40 -38 -35 -33 -31 -31 -32 -34 -33 -31 -31 -36 -39 -41 -41 -42 -41 -41 -41 -41 -40 -42 -43 -43 -42 -41 -41 -42 -43 -40 -35 -32 -30 -28 -27 -29 -33 -35 -35 -32 -29 -28 -27 -27 -7 -6 -5 -5 -5 -5 -5 -6 -7 -8 -8 -7 -7 -7 -9 -9 -9 -8 -8 -8 -8 -8 -7 -6 -4 -4 -5 -6 -7 -6 -6 -5 -5 -4 -4 -3 -3 -4 -4 -4 -5 -6 -7 -8 -9 -9 -9 -9 -8 -8 -7 -7 -7 -6 -6 -6 -6 -6 -5 -5 -5 -4 -4 -4 -3 -4 -4 -5 -6 -7 -7 -6 -4 -1 0 -1 -2 -3 -3 -1 -0 1 1 2 3 3 4 4 6 7 7 7 6 4 1 -1 -4 -5 -7 -9 -11 -13 -15 -17 -18 -18 -18 -17 -16 -15 -16 -17 -17 -17 -16 -15 -13 -11 -8 -6 -3 -2 -1 -1 -1 -2 -1 -0 0 1 1 1 1 1 3 3 3 2 1 0 0 -0 -1 -2 -4 -5 -5 -6 -6 -7 -7 -7 -8 -9 -10 -11 -10 -9 -6 -3 1 5 9 10 11 11 10 10 10 10 9 7 4 1 -1 -3 -6 -7 -8 -9 -8 -8 -7 -7 -8 -7 -6 -5 -3 0 3 6 10 12 13 13 12 10 6 3 1 -0 -1 -1 -1 -2 -2 -3 -3 -1 -0 1 3 2 3 3 4 3 4 3 2 2 1 -1 -4 -7 -10 -12 -14 -15 -15 -15 -12 -10 -10 -9 -8 -7 -4 -1 1 4 6 6 2 -6 -12 -18 -23 -27 -29 -28 -26 -25 -24 -24 -25 -26 -27 -27 -27 -25 -22 -19 -17 -15 -16 -18 -23 -30 -36 -41 -42 -41 -39 -39 -39 -38 -40 -39 -39 -38 -37 -36 -33 -29 -25 -21 -20 -22 -26 -31 -34 -34 -33 -32 -30 -31 -33 -35 -39 -38 -37 -35 -32 -29 -25 -20 -17 -14 -13 -10 -8 -8 -10 -14 -18 -21 -24 -25 -26 -28 -30 -32 -33 -35 -37 -39 -43 -46 -47 -46 -44 -42 -37 -34 -33 -31 -33 -34 -35 -35 -35 -34 -33 -32 -28 -23 -22 -26 -33 -40 -45 -48 -48 -48 -48 -47 -45 -43 -42 -43 -43 -43 -42 -42 -41 -41 -41 -39 -36 -34 -32 -31 -32 -33 -33 -31 -29 -32 -37 -40 -41 -41 -40 -39 -38 -37 -37 -39 -40 -40 -39 -40 -41 -42 -43 -42 -39 -36 -32 -29 -27 -28 -31 -35 -37 -34 -30 -28 -27 -27 -6 -6 -5 -6 -6 -6 -7 -8 -9 -9 -8 -7 -6 -7 -9 -9 -9 -9 -8 -7 -6 -6 -7 -6 -5 -5 -6 -6 -6 -6 -6 -5 -4 -4 -4 -3 -3 -3 -4 -5 -5 -6 -7 -8 -9 -9 -9 -9 -8 -8 -7 -6 -6 -6 -6 -5 -5 -5 -5 -4 -4 -3 -3 -3 -4 -4 -5 -5 -6 -7 -8 -7 -5 -2 1 1 1 -0 -0 1 2 3 4 4 4 4 4 4 5 5 4 4 3 1 -3 -6 -9 -11 -12 -12 -13 -13 -15 -16 -17 -18 -18 -18 -17 -16 -16 -16 -16 -16 -16 -16 -16 -15 -14 -13 -11 -10 -9 -8 -8 -9 -8 -7 -6 -4 -3 -2 -1 0 1 2 2 3 3 3 3 3 3 3 2 1 1 -0 -1 -2 -3 -3 -4 -6 -8 -10 -11 -12 -12 -11 -9 -6 -2 1 3 5 7 8 11 13 14 13 11 8 6 3 1 -1 -2 -4 -5 -5 -4 -3 -4 -4 -5 -6 -7 -6 -4 -1 3 7 9 13 15 15 12 10 7 4 2 1 -1 -1 -2 -2 -2 -2 -2 -2 -0 -0 0 1 1 1 2 1 1 1 2 2 1 -2 -6 -9 -12 -13 -13 -14 -14 -13 -12 -12 -13 -14 -12 -9 -5 0 4 5 3 -1 -6 -12 -17 -22 -26 -29 -29 -28 -26 -25 -25 -25 -26 -28 -29 -29 -27 -24 -19 -14 -11 -11 -15 -23 -30 -36 -38 -38 -37 -37 -38 -38 -39 -40 -41 -42 -40 -37 -33 -30 -26 -23 -20 -21 -23 -28 -31 -33 -34 -34 -32 -32 -33 -35 -39 -38 -39 -38 -35 -33 -29 -25 -23 -21 -19 -18 -15 -11 -8 -11 -14 -17 -21 -23 -25 -26 -28 -31 -33 -35 -37 -37 -40 -43 -45 -47 -47 -45 -41 -38 -35 -32 -33 -34 -35 -35 -36 -35 -35 -35 -32 -28 -23 -22 -29 -38 -44 -48 -50 -50 -50 -48 -46 -44 -43 -43 -43 -43 -42 -42 -41 -40 -40 -40 -38 -35 -34 -33 -32 -33 -34 -34 -31 -30 -34 -38 -41 -41 -39 -37 -35 -34 -35 -36 -37 -39 -39 -39 -40 -40 -41 -42 -40 -36 -33 -30 -29 -29 -31 -34 -37 -35 -32 -29 -28 -28 -7 -7 -7 -7 -8 -9 -9 -9 -9 -9 -7 -6 -7 -8 -9 -9 -9 -9 -8 -6 -6 -7 -7 -7 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -4 -3 -3 -4 -5 -6 -7 -8 -9 -10 -9 -8 -8 -8 -8 -7 -5 -5 -5 -4 -4 -4 -4 -4 -3 -3 -3 -3 -4 -4 -5 -5 -5 -5 -5 -6 -7 -6 -4 -2 1 2 2 2 2 3 3 2 1 1 1 1 -0 -1 -2 -4 -4 -4 -5 -7 -9 -12 -14 -14 -13 -12 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -10 -9 -10 -11 -13 -14 -15 -16 -16 -16 -15 -15 -15 -15 -15 -15 -14 -13 -12 -10 -8 -6 -5 -3 -2 -1 0 1 1 1 2 3 3 3 3 3 2 1 1 0 -1 -2 -3 -4 -6 -7 -10 -11 -12 -12 -11 -8 -6 -4 -2 0 4 8 11 12 13 13 11 9 6 4 3 1 -0 -1 -1 -1 -0 0 -0 -2 -4 -5 -6 -7 -6 -3 1 6 10 14 16 16 14 11 7 5 3 1 -0 -2 -2 -3 -3 -3 -2 -2 -1 -1 -1 0 -0 -1 -2 -2 -2 1 2 2 0 -4 -7 -9 -10 -13 -14 -15 -15 -14 -14 -16 -17 -17 -14 -8 -3 -1 -2 0 -2 -5 -9 -15 -20 -24 -27 -29 -30 -30 -28 -26 -25 -26 -28 -30 -31 -30 -27 -20 -14 -9 -10 -16 -23 -29 -31 -32 -33 -34 -35 -36 -37 -39 -40 -40 -39 -36 -34 -32 -31 -29 -26 -24 -23 -24 -28 -30 -32 -34 -36 -35 -34 -34 -38 -38 -39 -38 -35 -34 -32 -29 -28 -26 -25 -23 -21 -18 -13 -13 -13 -14 -17 -21 -22 -24 -27 -30 -33 -36 -36 -36 -37 -39 -43 -47 -50 -49 -46 -42 -38 -34 -34 -34 -35 -36 -36 -35 -35 -35 -34 -32 -27 -24 -26 -34 -41 -47 -50 -51 -51 -49 -47 -45 -44 -44 -43 -43 -42 -42 -41 -41 -41 -41 -40 -37 -35 -34 -33 -34 -35 -36 -34 -31 -32 -35 -38 -40 -39 -38 -36 -34 -33 -33 -35 -38 -40 -38 -37 -38 -39 -39 -38 -36 -33 -31 -30 -30 -30 -32 -36 -36 -34 -31 -29 -28 -9 -9 -9 -9 -9 -10 -10 -9 -8 -7 -7 -7 -8 -8 -8 -8 -8 -8 -7 -7 -8 -8 -8 -6 -6 -6 -5 -4 -4 -4 -5 -6 -6 -6 -5 -5 -4 -4 -4 -5 -6 -7 -8 -9 -9 -9 -8 -8 -7 -7 -6 -5 -5 -4 -4 -4 -3 -3 -3 -3 -3 -4 -4 -4 -5 -5 -4 -3 -2 -2 -4 -6 -7 -6 -3 0 2 3 3 1 0 -1 -2 -3 -3 -4 -5 -5 -6 -7 -8 -8 -8 -7 -7 -8 -11 -13 -13 -12 -10 -8 -8 -8 -7 -7 -6 -6 -6 -6 -7 -6 -4 -3 -3 -4 -7 -10 -12 -14 -15 -16 -15 -15 -15 -15 -16 -17 -17 -17 -17 -15 -14 -12 -11 -9 -8 -7 -5 -4 -3 -3 -1 0 1 2 2 2 2 2 1 1 0 -0 -0 -0 -0 -1 -2 -4 -7 -8 -10 -10 -10 -10 -10 -9 -7 -4 0 4 8 10 11 10 8 6 5 4 3 1 1 1 1 2 3 2 1 -1 -3 -5 -6 -7 -7 -5 -1 4 8 12 13 12 9 8 7 6 4 1 2 0 -1 -2 -3 -4 -3 -3 -3 -2 -2 -3 -4 -5 -5 -3 -1 -0 0 -2 -4 -5 -6 -8 -11 -14 -16 -16 -16 -17 -18 -21 -24 -20 -13 -9 -9 -3 -3 -3 -4 -8 -13 -17 -22 -26 -29 -30 -30 -29 -27 -26 -26 -28 -30 -32 -31 -28 -22 -15 -13 -14 -17 -19 -22 -24 -27 -29 -31 -34 -35 -37 -38 -39 -39 -38 -36 -34 -35 -33 -31 -28 -25 -24 -25 -27 -30 -33 -35 -35 -34 -33 -35 -37 -38 -37 -36 -35 -33 -31 -30 -29 -27 -27 -27 -25 -21 -17 -14 -13 -14 -17 -20 -22 -26 -29 -32 -35 -37 -37 -36 -37 -39 -44 -48 -51 -50 -47 -44 -38 -34 -34 -35 -36 -36 -35 -34 -35 -35 -34 -31 -28 -26 -31 -38 -44 -49 -52 -52 -51 -50 -47 -45 -44 -43 -43 -43 -42 -41 -40 -41 -42 -41 -39 -37 -36 -35 -35 -35 -36 -35 -33 -31 -32 -37 -39 -39 -37 -35 -33 -31 -31 -32 -36 -37 -36 -36 -37 -37 -38 -38 -37 -34 -33 -32 -31 -31 -31 -35 -38 -38 -35 -31 -29 -10 -10 -10 -9 -10 -10 -9 -8 -7 -6 -7 -8 -8 -8 -9 -9 -8 -7 -7 -9 -9 -9 -8 -7 -7 -6 -5 -4 -5 -6 -7 -7 -7 -6 -6 -5 -5 -5 -5 -6 -7 -7 -8 -9 -9 -8 -7 -7 -7 -6 -6 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -4 -4 -4 -3 -2 -1 -1 -1 -3 -5 -6 -6 -3 1 3 2 -0 -3 -5 -6 -6 -7 -7 -7 -7 -7 -7 -7 -6 -6 -6 -5 -5 -5 -7 -9 -10 -11 -9 -7 -6 -6 -5 -4 -3 -2 -2 -3 -4 -5 -4 -3 -2 -3 -4 -6 -8 -10 -11 -11 -11 -11 -11 -11 -12 -14 -15 -16 -17 -16 -16 -15 -14 -11 -10 -9 -8 -8 -7 -7 -5 -4 -2 -0 1 1 2 1 1 0 -1 -1 -2 -1 -0 2 3 3 2 -0 -3 -4 -6 -8 -9 -12 -13 -13 -12 -8 -3 0 3 5 4 4 4 4 3 3 3 3 3 3 4 5 5 4 2 0 -1 -4 -5 -6 -6 -4 -2 2 6 9 12 13 12 10 9 7 7 5 3 1 -1 -3 -4 -5 -5 -4 -4 -4 -4 -4 -5 -4 -4 -4 -3 -3 -3 -3 -3 -5 -8 -12 -16 -17 -17 -15 -15 -19 -26 -26 -21 -17 -16 -12 -10 -7 -4 -4 -8 -12 -16 -20 -25 -28 -30 -30 -29 -27 -26 -26 -26 -29 -30 -30 -29 -26 -22 -19 -15 -12 -14 -17 -21 -24 -27 -31 -33 -35 -36 -38 -38 -38 -37 -37 -37 -36 -35 -33 -31 -29 -27 -27 -28 -30 -33 -34 -34 -32 -33 -35 -36 -37 -36 -35 -34 -33 -32 -31 -29 -29 -29 -28 -27 -23 -19 -16 -14 -15 -17 -20 -24 -27 -30 -34 -37 -38 -37 -36 -37 -41 -46 -51 -52 -50 -46 -42 -38 -35 -34 -35 -35 -34 -34 -34 -35 -35 -33 -31 -28 -30 -34 -39 -45 -47 -51 -53 -53 -50 -46 -43 -42 -42 -43 -43 -41 -40 -39 -40 -41 -40 -39 -38 -37 -36 -34 -35 -35 -33 -32 -32 -37 -41 -40 -38 -35 -34 -32 -30 -30 -32 -33 -34 -35 -36 -37 -38 -38 -38 -37 -36 -34 -33 -33 -32 -35 -40 -42 -40 -34 -31 -11 -9 -9 -9 -8 -8 -7 -6 -6 -7 -9 -8 -8 -9 -10 -8 -8 -8 -9 -9 -8 -9 -9 -7 -6 -6 -6 -6 -8 -8 -8 -7 -7 -6 -5 -5 -5 -5 -5 -6 -7 -7 -8 -8 -8 -8 -7 -7 -6 -6 -6 -6 -6 -5 -5 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -1 -1 -0 -1 -2 -3 -5 -5 -4 -1 1 1 -1 -4 -7 -8 -9 -8 -8 -8 -7 -6 -6 -5 -3 -3 -2 -2 -2 -2 -3 -4 -6 -8 -9 -8 -6 -5 -5 -5 -5 -4 -2 -1 -2 -4 -6 -7 -6 -6 -5 -5 -5 -6 -6 -6 -6 -6 -6 -6 -6 -7 -9 -10 -12 -13 -14 -14 -14 -14 -12 -11 -9 -8 -8 -8 -8 -8 -7 -6 -3 -1 0 1 2 2 1 1 -1 -2 -3 -4 -3 -1 1 3 4 3 3 2 1 -2 -5 -9 -12 -15 -15 -13 -10 -7 -5 -3 -2 -1 0 0 2 3 4 4 3 4 5 6 7 6 5 3 2 -0 -2 -4 -5 -5 -5 -3 -0 4 7 10 11 11 11 11 10 9 6 3 0 -3 -4 -4 -4 -4 -4 -3 -3 -3 -4 -5 -6 -6 -5 -4 -4 -3 -4 -6 -9 -12 -15 -16 -15 -14 -15 -19 -21 -21 -20 -20 -17 -15 -13 -10 -7 -7 -9 -12 -15 -20 -24 -27 -28 -29 -29 -28 -27 -26 -26 -27 -29 -30 -32 -29 -25 -19 -13 -8 -8 -11 -15 -20 -26 -28 -30 -32 -34 -36 -37 -37 -37 -38 -38 -37 -36 -35 -32 -28 -25 -23 -25 -30 -34 -36 -35 -32 -33 -35 -36 -37 -36 -35 -35 -33 -31 -29 -28 -28 -29 -31 -29 -25 -21 -16 -14 -14 -15 -19 -24 -28 -33 -37 -39 -38 -37 -36 -38 -42 -47 -51 -52 -48 -45 -41 -37 -35 -34 -34 -35 -34 -34 -34 -35 -34 -33 -31 -31 -32 -36 -41 -46 -50 -53 -53 -52 -48 -45 -42 -42 -43 -43 -41 -40 -38 -39 -40 -41 -40 -39 -39 -37 -35 -34 -35 -34 -33 -33 -37 -43 -44 -41 -37 -35 -33 -31 -30 -30 -29 -32 -35 -37 -38 -39 -38 -38 -39 -38 -36 -34 -33 -34 -35 -40 -44 -44 -38 -34 -11 -9 -8 -7 -6 -5 -5 -6 -8 -9 -9 -8 -9 -10 -11 -9 -9 -9 -9 -7 -8 -9 -9 -7 -7 -7 -8 -8 -9 -9 -8 -8 -7 -6 -5 -5 -5 -5 -6 -6 -7 -7 -8 -8 -8 -8 -7 -7 -7 -7 -7 -7 -6 -5 -5 -4 -4 -4 -4 -4 -3 -3 -2 -2 -1 -0 -0 -1 -2 -3 -3 -3 -2 -1 -0 -1 -3 -5 -8 -8 -8 -8 -7 -7 -6 -5 -4 -3 -2 -1 -1 -1 -0 -0 -1 -2 -3 -5 -7 -8 -7 -6 -5 -5 -5 -6 -6 -5 -4 -4 -5 -8 -10 -10 -10 -9 -7 -7 -6 -5 -5 -4 -4 -4 -3 -4 -4 -5 -6 -7 -8 -10 -11 -12 -13 -12 -12 -10 -9 -8 -7 -8 -8 -8 -8 -6 -4 -2 -0 1 2 3 3 2 0 -1 -3 -4 -4 -2 -1 1 2 4 5 5 5 4 1 -2 -6 -10 -12 -13 -12 -12 -10 -9 -8 -7 -6 -4 -2 1 2 1 2 4 5 6 6 6 5 4 4 3 1 -0 -2 -5 -6 -6 -5 -2 2 6 9 11 12 12 11 10 8 6 3 1 -1 -3 -5 -6 -5 -5 -3 -2 -3 -5 -7 -7 -7 -7 -7 -7 -5 -5 -7 -9 -12 -15 -17 -17 -15 -16 -18 -19 -21 -21 -19 -16 -13 -13 -11 -10 -10 -12 -15 -17 -19 -22 -24 -27 -29 -29 -27 -25 -25 -25 -27 -31 -30 -26 -21 -16 -9 -6 -7 -10 -14 -20 -22 -24 -26 -28 -31 -34 -36 -37 -38 -39 -39 -38 -37 -35 -32 -27 -22 -22 -25 -30 -34 -36 -35 -34 -35 -37 -38 -38 -36 -35 -34 -32 -30 -28 -28 -29 -32 -32 -29 -26 -22 -18 -15 -14 -16 -21 -26 -31 -36 -39 -40 -38 -36 -35 -38 -43 -48 -53 -52 -48 -44 -39 -37 -35 -35 -35 -35 -34 -34 -34 -34 -34 -33 -32 -32 -34 -37 -43 -48 -52 -53 -52 -48 -46 -44 -43 -43 -43 -42 -40 -38 -39 -40 -41 -42 -40 -39 -38 -36 -35 -36 -36 -35 -34 -37 -43 -45 -44 -40 -36 -33 -32 -31 -31 -30 -31 -32 -35 -37 -38 -37 -36 -38 -38 -36 -34 -34 -34 -34 -37 -42 -44 -40 -36 -9 -8 -7 -6 -5 -5 -6 -8 -9 -9 -9 -8 -7 -8 -10 -10 -10 -9 -8 -8 -8 -9 -10 -11 -10 -9 -9 -9 -9 -9 -9 -8 -7 -6 -5 -5 -5 -6 -6 -6 -7 -7 -8 -8 -8 -7 -7 -7 -7 -7 -7 -7 -6 -5 -4 -4 -5 -5 -5 -4 -3 -3 -2 -1 -1 -1 -2 -2 -2 -2 -1 -1 -1 -1 -2 -4 -5 -6 -7 -6 -6 -6 -5 -5 -5 -4 -3 -2 -1 -1 -1 -1 -1 -1 -2 -3 -4 -5 -7 -7 -7 -5 -4 -3 -4 -6 -8 -8 -7 -7 -7 -9 -10 -11 -11 -11 -9 -8 -7 -6 -5 -5 -4 -4 -3 -3 -3 -4 -4 -4 -5 -6 -8 -9 -10 -11 -12 -12 -10 -9 -7 -7 -7 -7 -8 -7 -6 -5 -3 -2 -0 1 3 3 3 2 0 -1 -2 -2 -1 -1 -0 1 3 5 6 6 6 5 3 -0 -3 -6 -7 -8 -8 -8 -8 -8 -9 -9 -7 -5 -4 -3 -1 0 1 4 5 5 5 4 4 5 5 5 2 0 -2 -5 -6 -7 -5 -2 1 4 7 9 10 10 10 9 7 6 4 3 -0 -3 -5 -7 -6 -4 -2 -2 -5 -7 -8 -9 -9 -8 -6 -4 -3 -4 -8 -13 -18 -19 -15 -14 -15 -16 -19 -22 -22 -20 -17 -15 -13 -12 -10 -10 -11 -11 -11 -12 -14 -20 -25 -28 -28 -26 -24 -22 -22 -25 -26 -24 -22 -20 -14 -10 -8 -7 -9 -14 -17 -20 -22 -25 -28 -31 -34 -37 -39 -39 -39 -39 -39 -38 -36 -32 -27 -24 -23 -25 -30 -34 -35 -35 -34 -35 -37 -37 -36 -34 -34 -33 -32 -30 -29 -29 -31 -32 -32 -31 -27 -23 -18 -14 -13 -17 -22 -28 -35 -39 -41 -40 -37 -36 -37 -40 -45 -51 -54 -52 -48 -42 -39 -36 -35 -34 -35 -35 -34 -33 -33 -34 -33 -33 -32 -32 -34 -39 -45 -50 -53 -51 -49 -47 -45 -44 -44 -44 -43 -42 -41 -41 -40 -40 -41 -41 -40 -38 -37 -34 -35 -37 -39 -39 -38 -40 -44 -46 -42 -38 -34 -33 -33 -33 -31 -29 -29 -32 -34 -36 -36 -36 -37 -37 -36 -34 -35 -35 -36 -38 -41 -41 -39 -37 -8 -7 -6 -6 -6 -7 -8 -9 -9 -9 -8 -7 -6 -7 -10 -10 -9 -9 -9 -9 -9 -10 -12 -14 -12 -10 -9 -9 -9 -9 -9 -8 -7 -6 -6 -6 -6 -6 -7 -7 -7 -8 -8 -8 -8 -7 -7 -7 -7 -7 -6 -5 -5 -5 -5 -5 -5 -5 -5 -4 -3 -3 -3 -3 -3 -3 -3 -3 -2 -0 1 0 -1 -2 -4 -4 -4 -4 -4 -3 -4 -4 -5 -5 -5 -4 -4 -4 -3 -3 -4 -4 -5 -5 -5 -6 -6 -7 -8 -9 -8 -6 -5 -3 -4 -5 -8 -9 -9 -8 -8 -8 -9 -9 -9 -9 -8 -8 -7 -6 -6 -6 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -5 -6 -7 -8 -10 -12 -12 -11 -9 -8 -7 -6 -7 -7 -7 -6 -6 -5 -4 -2 -0 1 2 3 2 2 1 1 0 0 -0 -0 0 1 3 4 5 6 6 4 3 1 -1 -3 -4 -3 -3 -3 -4 -6 -7 -7 -8 -8 -6 -4 -3 -1 1 3 3 3 3 3 4 5 5 5 3 0 -2 -5 -7 -7 -6 -4 -1 2 4 5 7 8 9 8 7 5 2 -1 -3 -5 -7 -6 -5 -4 -4 -5 -7 -8 -8 -7 -6 -5 -4 -3 -5 -10 -15 -18 -15 -14 -14 -14 -15 -19 -22 -23 -21 -18 -16 -14 -12 -11 -11 -11 -10 -7 -5 -9 -15 -22 -27 -26 -24 -21 -18 -18 -19 -19 -19 -21 -18 -15 -12 -9 -7 -7 -9 -13 -16 -20 -23 -26 -30 -32 -34 -37 -38 -38 -38 -39 -38 -37 -34 -29 -25 -25 -27 -31 -34 -36 -37 -37 -37 -37 -37 -34 -33 -32 -32 -31 -31 -30 -31 -33 -33 -33 -31 -28 -23 -18 -14 -14 -17 -24 -30 -36 -40 -41 -40 -38 -37 -39 -42 -47 -52 -54 -51 -46 -42 -38 -36 -35 -34 -35 -34 -33 -33 -33 -33 -33 -32 -31 -31 -35 -40 -46 -51 -51 -50 -48 -46 -44 -44 -44 -44 -44 -44 -42 -40 -38 -40 -41 -41 -39 -38 -36 -35 -37 -40 -42 -40 -39 -40 -43 -42 -38 -36 -35 -35 -34 -31 -29 -28 -30 -33 -35 -36 -37 -37 -37 -36 -36 -37 -37 -37 -37 -38 -38 -39 -39 -6 -6 -7 -7 -9 -10 -10 -9 -9 -7 -6 -6 -7 -8 -9 -9 -9 -9 -10 -11 -11 -11 -12 -13 -12 -10 -9 -9 -9 -9 -9 -8 -7 -7 -7 -7 -7 -7 -7 -8 -8 -8 -8 -9 -8 -8 -8 -7 -7 -6 -5 -5 -5 -5 -6 -6 -6 -5 -4 -4 -4 -4 -4 -4 -5 -5 -4 -2 -0 1 1 -1 -3 -5 -5 -3 -2 -2 -2 -3 -4 -4 -5 -5 -6 -6 -6 -7 -7 -7 -7 -7 -8 -8 -8 -8 -7 -7 -8 -9 -9 -8 -6 -5 -5 -5 -6 -7 -7 -6 -6 -5 -5 -5 -5 -5 -4 -4 -4 -4 -5 -5 -5 -4 -4 -4 -5 -5 -4 -4 -4 -3 -3 -3 -3 -4 -6 -8 -10 -11 -10 -9 -8 -7 -6 -6 -6 -6 -6 -6 -6 -5 -5 -4 -2 -1 -0 0 0 1 1 1 0 -1 -2 -2 -1 -0 1 3 4 4 4 3 2 0 -1 -0 1 1 2 1 -0 -2 -5 -6 -6 -5 -5 -4 -3 -1 0 3 3 2 2 2 2 3 4 3 2 -0 -3 -6 -8 -8 -7 -6 -4 -2 0 3 6 7 7 6 5 3 1 -1 -4 -6 -6 -6 -5 -4 -3 -3 -3 -4 -5 -6 -6 -5 -4 -5 -9 -13 -13 -14 -14 -13 -12 -15 -19 -22 -24 -22 -19 -17 -15 -12 -11 -11 -10 -9 -5 -3 -4 -8 -15 -20 -22 -20 -17 -14 -14 -15 -16 -18 -19 -19 -17 -14 -10 -6 -6 -8 -12 -16 -18 -21 -25 -28 -31 -34 -37 -39 -39 -40 -40 -40 -38 -35 -30 -27 -26 -28 -32 -36 -38 -38 -37 -38 -38 -38 -36 -34 -32 -31 -32 -33 -33 -34 -34 -34 -33 -31 -28 -24 -18 -14 -14 -18 -23 -30 -36 -40 -40 -39 -39 -39 -40 -44 -49 -53 -54 -50 -45 -42 -39 -35 -33 -34 -33 -33 -33 -33 -33 -33 -32 -31 -30 -31 -35 -41 -47 -50 -50 -49 -46 -44 -44 -44 -45 -46 -46 -44 -41 -38 -39 -41 -42 -41 -40 -39 -37 -37 -40 -41 -38 -36 -36 -37 -37 -37 -38 -37 -37 -34 -32 -30 -29 -30 -32 -35 -37 -38 -38 -39 -40 -40 -39 -37 -36 -36 -35 -36 -38 -39 -6 -6 -8 -9 -10 -11 -10 -9 -7 -6 -6 -7 -8 -9 -8 -8 -9 -10 -11 -12 -12 -11 -11 -9 -9 -11 -11 -10 -9 -9 -9 -8 -7 -7 -8 -8 -8 -8 -9 -8 -8 -8 -8 -8 -8 -8 -7 -6 -6 -5 -5 -5 -6 -6 -6 -6 -6 -5 -4 -4 -4 -5 -5 -6 -6 -5 -3 -1 0 0 -1 -3 -5 -5 -4 -3 -2 -2 -3 -3 -4 -4 -5 -6 -6 -7 -8 -9 -9 -9 -8 -8 -8 -8 -7 -7 -6 -7 -8 -9 -9 -8 -7 -6 -5 -4 -3 -3 -3 -2 -2 -2 -1 -1 -1 -0 -0 -0 -1 -1 -2 -3 -3 -3 -3 -3 -3 -3 -3 -3 -4 -3 -3 -2 -1 -1 -1 -2 -4 -6 -8 -8 -9 -8 -7 -6 -5 -5 -5 -5 -6 -7 -7 -7 -7 -6 -6 -5 -5 -4 -3 -2 -2 -2 -3 -4 -4 -4 -3 -2 0 1 2 2 1 -0 -0 1 2 3 4 5 5 5 2 -1 -2 -3 -4 -3 -3 -2 -2 -0 0 1 1 0 -0 2 3 4 4 3 2 -1 -3 -6 -8 -9 -9 -8 -7 -3 -1 1 3 3 3 4 4 2 -1 -3 -6 -7 -6 -4 -2 -2 -2 -2 -3 -4 -5 -6 -5 -5 -6 -9 -11 -12 -13 -12 -10 -10 -13 -18 -23 -24 -23 -21 -19 -15 -12 -10 -9 -10 -9 -4 -0 2 -0 -6 -11 -15 -16 -16 -15 -14 -14 -15 -17 -19 -20 -19 -15 -10 -7 -7 -9 -11 -13 -17 -21 -25 -28 -31 -34 -36 -38 -40 -41 -42 -42 -40 -36 -31 -27 -26 -30 -34 -37 -39 -40 -41 -42 -43 -41 -38 -36 -34 -33 -34 -35 -35 -34 -34 -34 -33 -31 -29 -25 -18 -13 -13 -16 -22 -28 -34 -38 -38 -39 -40 -40 -43 -47 -51 -54 -54 -50 -46 -42 -37 -33 -33 -34 -34 -34 -33 -33 -33 -33 -31 -30 -29 -31 -36 -43 -48 -50 -49 -47 -45 -44 -44 -44 -45 -45 -43 -41 -39 -39 -41 -43 -43 -42 -41 -39 -38 -40 -41 -39 -38 -38 -38 -39 -40 -41 -40 -38 -36 -34 -32 -31 -31 -32 -34 -37 -40 -41 -42 -43 -43 -41 -38 -35 -35 -34 -34 -36 -38 -6 -7 -9 -10 -10 -10 -9 -7 -6 -6 -8 -9 -8 -7 -7 -8 -10 -11 -12 -13 -12 -11 -9 -8 -8 -10 -11 -10 -10 -10 -10 -9 -8 -8 -8 -8 -8 -9 -9 -9 -9 -8 -8 -8 -7 -7 -6 -5 -5 -5 -5 -6 -6 -7 -7 -6 -6 -5 -5 -5 -5 -6 -6 -6 -5 -3 -2 -1 -1 -2 -3 -4 -4 -3 -3 -3 -3 -3 -4 -4 -5 -5 -6 -7 -8 -9 -9 -9 -8 -7 -6 -6 -5 -4 -4 -4 -5 -6 -8 -9 -9 -8 -7 -5 -3 -2 -0 -0 0 1 1 1 2 2 2 2 2 1 1 0 -0 -1 -2 -2 -2 -2 -2 -1 -1 -2 -3 -3 -3 -2 -1 0 1 1 0 -1 -2 -4 -5 -5 -4 -4 -4 -3 -4 -4 -4 -5 -5 -6 -6 -7 -8 -9 -9 -10 -10 -9 -8 -7 -6 -6 -6 -6 -6 -5 -4 -3 -2 -1 -1 -2 -2 -1 -0 0 2 3 5 6 6 4 2 1 -1 -1 -1 -1 -1 -1 -0 0 0 0 -0 -1 -0 1 2 2 3 2 1 -0 -3 -5 -7 -8 -9 -8 -7 -5 -4 -3 -2 -1 1 2 0 -1 -4 -6 -6 -5 -3 -2 -2 -1 -1 -2 -2 -3 -3 -4 -5 -5 -6 -9 -11 -12 -11 -8 -8 -11 -18 -22 -24 -24 -23 -19 -15 -11 -8 -8 -10 -7 -2 4 7 5 1 -4 -9 -13 -14 -15 -14 -13 -15 -18 -21 -23 -20 -15 -12 -10 -10 -9 -11 -14 -17 -22 -25 -28 -30 -33 -36 -39 -41 -42 -42 -41 -39 -35 -31 -28 -28 -31 -34 -39 -41 -43 -44 -45 -43 -42 -39 -37 -35 -35 -36 -36 -37 -36 -36 -35 -35 -33 -31 -24 -17 -12 -12 -15 -20 -27 -33 -36 -38 -40 -41 -42 -45 -48 -52 -56 -54 -51 -46 -40 -35 -34 -34 -35 -35 -34 -34 -33 -33 -32 -31 -30 -30 -32 -39 -45 -48 -49 -47 -45 -44 -44 -44 -45 -45 -44 -42 -40 -40 -41 -43 -44 -43 -42 -40 -38 -38 -39 -39 -39 -38 -36 -36 -39 -43 -43 -41 -39 -37 -35 -33 -32 -31 -32 -36 -40 -42 -44 -45 -44 -41 -38 -36 -34 -34 -33 -34 -36 -7 -8 -9 -9 -9 -9 -7 -6 -7 -8 -9 -8 -7 -7 -8 -9 -11 -12 -13 -14 -12 -10 -8 -8 -8 -8 -9 -10 -11 -10 -10 -9 -8 -8 -8 -9 -9 -9 -9 -9 -8 -8 -8 -7 -6 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -6 -6 -5 -5 -5 -6 -6 -6 -6 -4 -2 -1 -2 -3 -4 -4 -4 -3 -3 -4 -4 -5 -5 -6 -7 -8 -8 -9 -9 -10 -9 -8 -7 -5 -4 -2 -1 -1 -0 -0 -1 -3 -5 -7 -7 -7 -6 -5 -3 -2 -1 -0 -0 0 1 1 1 2 2 2 2 1 1 1 1 0 -1 -1 -1 -1 -0 -0 0 -0 -0 -1 -2 -2 -2 -2 -1 -0 1 1 1 1 0 -0 -1 -1 -1 -2 -2 -2 -2 -3 -3 -3 -3 -3 -3 -4 -5 -7 -8 -10 -12 -12 -12 -12 -11 -10 -9 -8 -7 -6 -5 -5 -5 -4 -5 -4 -4 -4 -3 -3 -2 -1 2 4 5 5 3 2 2 2 2 2 1 1 1 1 1 -0 -1 -1 -1 -0 1 1 1 1 1 -2 -3 -4 -5 -6 -7 -9 -9 -9 -8 -7 -6 -4 -2 -1 -1 -2 -4 -5 -6 -5 -4 -3 -1 -0 0 1 0 -0 -1 -2 -4 -5 -6 -8 -10 -10 -8 -6 -5 -9 -14 -19 -23 -25 -22 -18 -14 -10 -7 -9 -8 -4 0 5 8 8 6 1 -6 -11 -14 -15 -14 -15 -17 -20 -24 -24 -22 -20 -18 -15 -12 -13 -15 -16 -19 -22 -24 -26 -28 -32 -35 -38 -40 -41 -41 -39 -37 -34 -30 -29 -30 -32 -36 -39 -42 -43 -45 -45 -43 -41 -38 -36 -35 -36 -37 -37 -37 -38 -37 -37 -35 -34 -31 -25 -17 -12 -10 -13 -18 -26 -31 -35 -37 -39 -40 -42 -45 -49 -56 -57 -54 -50 -44 -38 -35 -34 -36 -35 -35 -34 -33 -32 -32 -31 -30 -30 -30 -35 -40 -45 -47 -46 -45 -44 -44 -44 -44 -46 -46 -44 -42 -41 -41 -42 -44 -44 -43 -40 -36 -34 -37 -40 -41 -40 -37 -35 -36 -40 -44 -43 -42 -40 -38 -36 -34 -31 -30 -33 -38 -42 -45 -46 -43 -41 -39 -37 -34 -34 -33 -33 -33 -8 -8 -8 -8 -7 -6 -6 -7 -9 -10 -8 -8 -7 -7 -8 -10 -12 -13 -14 -13 -11 -9 -8 -8 -8 -8 -8 -10 -11 -10 -9 -9 -8 -8 -8 -9 -9 -9 -9 -8 -8 -7 -7 -6 -5 -4 -4 -4 -4 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 -6 -6 -6 -5 -4 -2 -1 -3 -4 -6 -6 -5 -5 -5 -6 -7 -7 -8 -8 -8 -9 -10 -11 -11 -11 -10 -8 -6 -4 -2 0 2 3 2 2 1 0 -2 -3 -4 -4 -4 -4 -3 -2 -2 -3 -3 -3 -3 -2 -2 -1 -1 -1 -0 -0 0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 -0 -1 -2 -2 -2 -2 -1 -0 0 1 2 3 2 2 2 1 1 0 0 0 -0 -0 0 0 1 1 0 -1 -2 -4 -6 -8 -11 -13 -13 -13 -12 -10 -8 -6 -6 -6 -6 -6 -7 -6 -5 -5 -5 -6 -7 -7 -6 -3 0 2 3 3 4 4 4 4 3 3 3 2 2 1 -0 -1 -1 -1 -1 -0 0 -0 -0 -1 -1 -1 -1 -1 -3 -5 -7 -9 -9 -9 -9 -9 -8 -5 -3 -2 -3 -5 -6 -7 -6 -5 -3 -1 0 2 2 2 2 1 -1 -2 -3 -5 -7 -8 -7 -5 -5 -5 -8 -13 -19 -23 -23 -21 -18 -14 -8 -7 -6 -5 -4 -1 4 8 9 7 2 -4 -9 -12 -14 -15 -16 -19 -24 -26 -26 -25 -23 -20 -17 -17 -18 -17 -18 -19 -20 -22 -24 -27 -30 -34 -36 -38 -39 -40 -39 -37 -34 -31 -30 -29 -31 -35 -39 -43 -45 -46 -45 -42 -39 -36 -34 -34 -36 -38 -39 -39 -38 -38 -38 -37 -35 -32 -26 -17 -10 -9 -11 -18 -25 -30 -33 -36 -37 -39 -42 -45 -51 -56 -57 -54 -47 -42 -37 -35 -36 -34 -34 -33 -32 -32 -31 -31 -31 -30 -30 -32 -36 -40 -44 -45 -44 -44 -43 -44 -44 -46 -46 -45 -43 -42 -41 -40 -42 -43 -43 -40 -37 -35 -38 -41 -44 -43 -37 -33 -33 -36 -42 -44 -44 -42 -40 -38 -35 -32 -30 -31 -35 -41 -45 -47 -44 -42 -40 -38 -34 -34 -34 -34 -32 -8 -8 -7 -7 -6 -6 -7 -9 -9 -9 -8 -7 -7 -8 -9 -11 -13 -13 -13 -11 -10 -8 -7 -7 -8 -8 -8 -9 -10 -9 -9 -8 -8 -7 -8 -8 -9 -8 -8 -7 -6 -6 -5 -5 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -4 -5 -6 -6 -6 -5 -4 -2 -2 -3 -5 -6 -7 -7 -7 -7 -8 -9 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -8 -6 -3 -1 0 2 3 3 2 2 1 1 0 0 0 0 -1 -3 -3 -3 -5 -6 -6 -6 -5 -5 -5 -5 -4 -4 -3 -2 -1 0 1 2 2 2 2 2 2 2 2 2 3 3 2 2 1 -0 -1 -1 -2 -2 -2 -1 0 2 3 4 4 4 3 3 3 3 3 3 3 3 4 5 5 6 5 4 3 2 -1 -4 -7 -9 -10 -10 -10 -8 -6 -6 -6 -5 -5 -4 -3 -3 -4 -4 -5 -7 -9 -10 -9 -7 -4 -1 1 2 3 3 3 3 3 3 4 4 3 2 1 -0 -1 -1 -1 -1 -1 -1 -1 -2 -1 -1 -1 -1 -2 -3 -6 -8 -9 -10 -10 -10 -9 -7 -5 -4 -4 -5 -7 -8 -7 -5 -3 -1 1 2 3 4 4 1 0 -1 -2 -3 -5 -5 -5 -6 -3 -3 -7 -12 -16 -18 -21 -22 -21 -14 -9 -5 -4 -4 -4 -1 2 5 7 5 2 -3 -8 -11 -14 -16 -18 -23 -26 -28 -29 -28 -26 -23 -21 -20 -19 -19 -19 -19 -20 -21 -22 -25 -29 -32 -35 -37 -39 -39 -39 -37 -35 -33 -30 -30 -32 -37 -42 -45 -46 -45 -43 -41 -38 -36 -35 -36 -37 -39 -40 -40 -40 -40 -39 -37 -35 -31 -24 -16 -9 -7 -11 -18 -25 -29 -32 -34 -36 -39 -40 -44 -49 -53 -55 -51 -45 -40 -36 -35 -33 -33 -33 -32 -31 -30 -31 -31 -31 -30 -30 -33 -37 -43 -46 -46 -45 -44 -44 -45 -45 -46 -46 -45 -43 -41 -40 -40 -42 -42 -42 -40 -39 -39 -40 -42 -41 -36 -33 -32 -35 -39 -42 -44 -43 -42 -39 -36 -33 -31 -30 -33 -38 -44 -47 -45 -43 -41 -39 -35 -34 -34 -34 -32 -7 -7 -7 -6 -6 -7 -9 -9 -9 -8 -8 -7 -8 -8 -9 -11 -12 -12 -11 -9 -8 -7 -7 -8 -8 -7 -8 -8 -9 -8 -8 -8 -7 -7 -7 -8 -8 -8 -7 -6 -5 -4 -4 -4 -4 -4 -3 -3 -2 -2 -1 -1 -1 -2 -2 -3 -4 -6 -6 -7 -6 -4 -2 -2 -3 -5 -7 -7 -8 -8 -9 -9 -10 -10 -10 -9 -9 -8 -8 -8 -8 -8 -7 -7 -5 -4 -2 -0 1 1 1 0 1 1 2 3 3 3 3 1 -1 -4 -5 -6 -8 -8 -8 -6 -5 -5 -5 -5 -5 -5 -4 -2 -1 0 1 2 3 3 3 3 3 2 3 3 3 4 4 4 4 3 3 2 1 0 -0 0 1 1 2 3 4 4 4 4 4 4 5 6 7 7 7 8 9 10 10 10 9 9 6 4 1 -1 -4 -5 -6 -6 -5 -4 -3 -2 -2 -1 -1 -2 -2 -2 -1 -2 -4 -7 -9 -10 -9 -6 -4 -1 0 1 0 1 1 2 3 4 4 4 2 1 0 -0 -1 -1 -1 -1 -1 -2 -2 -3 -3 -2 -2 -2 -3 -5 -6 -7 -7 -8 -9 -8 -7 -7 -6 -7 -8 -9 -9 -7 -6 -3 -0 1 3 4 4 2 1 0 0 -0 -2 -3 -3 -5 -3 -2 -3 -7 -10 -13 -18 -21 -22 -19 -12 -5 -1 1 -0 -2 -3 -2 2 4 3 0 -4 -7 -12 -15 -17 -21 -24 -27 -30 -31 -30 -28 -27 -25 -24 -22 -20 -18 -18 -18 -19 -20 -23 -27 -30 -33 -36 -37 -39 -39 -37 -36 -33 -31 -30 -33 -36 -41 -43 -44 -43 -42 -40 -39 -38 -37 -37 -38 -40 -41 -42 -41 -40 -39 -38 -35 -31 -24 -14 -9 -7 -12 -19 -25 -29 -31 -34 -37 -38 -41 -45 -49 -52 -52 -48 -43 -38 -34 -33 -33 -33 -32 -30 -30 -31 -32 -31 -30 -29 -30 -33 -39 -44 -47 -47 -46 -46 -45 -45 -44 -45 -45 -44 -42 -40 -40 -42 -44 -45 -43 -41 -36 -32 -32 -36 -36 -34 -33 -35 -39 -42 -44 -43 -42 -41 -39 -37 -34 -32 -32 -35 -41 -46 -46 -45 -43 -40 -36 -34 -34 -34 -34 -7 -7 -6 -7 -8 -8 -9 -9 -9 -8 -8 -8 -8 -9 -10 -11 -11 -11 -10 -8 -7 -7 -7 -8 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -7 -7 -7 -7 -6 -5 -4 -4 -3 -4 -4 -3 -2 -1 -1 -0 -0 0 -0 -1 -3 -5 -6 -6 -7 -6 -4 -3 -2 -3 -5 -6 -7 -8 -8 -9 -9 -8 -8 -8 -7 -7 -7 -6 -6 -6 -5 -5 -5 -4 -4 -3 -2 -1 -1 -1 -0 -0 1 2 3 3 2 1 -1 -3 -6 -7 -8 -8 -9 -8 -5 -3 -2 -2 -3 -4 -4 -4 -4 -3 -2 -1 0 1 1 1 1 2 3 3 3 4 4 5 5 6 6 6 6 6 6 5 5 4 3 3 2 2 2 3 3 3 3 5 6 7 9 9 9 10 11 11 11 12 12 12 11 9 8 6 3 1 -2 -3 -4 -3 -2 -1 -0 1 1 0 0 1 1 1 1 -1 -4 -6 -7 -6 -4 -3 -2 -2 -3 -3 -3 -1 0 2 4 4 4 3 2 1 0 -0 -1 -1 -1 -2 -2 -3 -4 -4 -4 -3 -3 -3 -4 -4 -3 -4 -5 -6 -7 -8 -8 -8 -8 -9 -10 -10 -9 -7 -4 -1 2 3 3 0 -1 -0 0 1 0 -0 -1 -3 -2 -2 -2 -4 -5 -7 -11 -15 -18 -15 -9 -6 -5 1 2 0 -3 -5 -3 -1 0 -0 -2 -4 -7 -12 -15 -20 -22 -25 -29 -31 -33 -32 -31 -28 -26 -24 -22 -20 -17 -16 -15 -16 -17 -20 -23 -27 -31 -34 -37 -38 -37 -36 -34 -33 -32 -32 -33 -37 -40 -42 -43 -42 -42 -41 -40 -39 -37 -38 -39 -41 -43 -43 -42 -41 -39 -36 -34 -30 -23 -17 -8 -7 -12 -19 -25 -28 -31 -35 -37 -40 -43 -46 -49 -52 -50 -46 -41 -36 -33 -32 -32 -32 -31 -32 -32 -31 -31 -30 -28 -28 -30 -34 -41 -45 -48 -48 -47 -46 -45 -43 -43 -42 -42 -41 -40 -40 -42 -45 -48 -47 -43 -36 -30 -30 -34 -36 -35 -34 -35 -38 -42 -44 -42 -43 -43 -42 -40 -39 -35 -33 -33 -39 -45 -48 -47 -44 -41 -37 -35 -34 -34 -35 -7 -7 -7 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -9 -10 -10 -10 -10 -8 -7 -6 -7 -7 -8 -7 -7 -7 -7 -7 -7 -7 -6 -5 -5 -6 -7 -7 -6 -6 -5 -4 -4 -4 -4 -4 -3 -2 -0 1 1 0 -0 -1 -3 -4 -6 -6 -6 -5 -5 -4 -3 -3 -4 -6 -7 -7 -8 -8 -8 -8 -7 -6 -6 -6 -6 -6 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -2 -1 -0 0 1 1 1 -0 -1 -3 -5 -7 -9 -10 -10 -9 -8 -7 -6 -3 -2 -3 -3 -3 -4 -5 -5 -5 -5 -4 -4 -3 -3 -2 -1 -0 1 2 4 5 5 6 6 6 7 8 9 9 9 8 8 9 8 7 6 4 2 2 3 2 2 3 4 6 8 9 9 9 9 9 9 9 10 11 12 11 10 10 9 7 5 3 0 -2 -2 -2 -1 -0 1 1 1 1 2 2 3 3 2 1 -2 -3 -3 -3 -2 -1 -1 -2 -3 -5 -5 -4 -2 0 2 3 4 4 3 2 1 -0 -1 -2 -2 -2 -2 -3 -5 -6 -5 -5 -4 -2 -2 -1 -2 -2 -3 -4 -5 -6 -7 -7 -8 -10 -11 -11 -10 -7 -4 -1 1 0 -1 -2 -2 -1 0 2 2 2 1 0 -1 -2 -3 -1 -2 -4 -7 -11 -9 -6 -6 -9 -5 -1 1 0 -2 -0 -2 -3 -3 -2 -1 -3 -7 -11 -17 -20 -23 -26 -30 -33 -34 -34 -33 -31 -29 -26 -22 -20 -17 -14 -13 -12 -13 -16 -20 -25 -29 -33 -35 -35 -35 -34 -33 -33 -32 -32 -34 -36 -38 -41 -42 -43 -44 -43 -43 -41 -40 -40 -41 -43 -43 -43 -43 -40 -37 -35 -33 -29 -24 -15 -8 -5 -9 -18 -24 -29 -33 -35 -37 -40 -43 -46 -51 -52 -49 -44 -39 -35 -33 -33 -34 -34 -33 -32 -30 -29 -29 -27 -26 -27 -30 -35 -41 -48 -49 -48 -47 -46 -44 -42 -40 -40 -41 -41 -41 -41 -43 -47 -48 -44 -38 -32 -30 -31 -33 -35 -35 -35 -37 -40 -42 -42 -43 -45 -45 -44 -42 -38 -34 -32 -37 -43 -47 -47 -45 -41 -38 -36 -35 -35 -35 -7 -7 -7 -7 -7 -7 -8 -8 -8 -8 -8 -8 -8 -9 -9 -9 -9 -8 -7 -6 -6 -7 -8 -8 -7 -7 -6 -6 -6 -6 -6 -6 -5 -5 -6 -6 -6 -6 -5 -5 -5 -4 -4 -4 -3 -2 -1 0 1 1 1 -0 -1 -3 -4 -6 -6 -4 -3 -3 -2 -3 -4 -5 -6 -6 -7 -8 -8 -7 -7 -6 -5 -5 -5 -5 -5 -5 -4 -3 -3 -2 -3 -3 -3 -3 -3 -2 0 1 0 -0 -2 -3 -4 -5 -7 -8 -9 -10 -11 -11 -8 -7 -6 -5 -4 -4 -5 -6 -6 -6 -7 -7 -7 -7 -7 -6 -6 -5 -4 -3 -2 -1 1 3 5 6 8 9 9 10 10 11 10 10 10 11 11 11 10 8 6 5 4 5 5 5 4 4 5 7 8 8 8 7 6 6 6 6 7 8 7 7 7 7 7 6 5 3 0 -1 -1 -1 -2 -0 0 0 1 2 3 3 4 3 3 2 1 -0 -1 -1 0 1 2 0 -2 -4 -5 -5 -4 -2 0 2 3 3 3 3 2 0 -1 -2 -2 -1 -1 -3 -6 -7 -7 -5 -3 -2 -1 -1 -1 -1 -1 -2 -3 -4 -5 -7 -8 -9 -10 -11 -11 -9 -6 -4 -2 -2 -2 -2 -2 -1 1 2 2 3 3 1 -1 -2 0 1 -0 -1 -4 -4 -4 -6 -10 -7 -4 -1 1 2 4 2 -1 -2 3 4 2 -2 -5 -13 -18 -20 -22 -26 -31 -34 -37 -38 -36 -33 -30 -26 -22 -19 -15 -12 -9 -7 -9 -12 -17 -22 -28 -31 -33 -33 -33 -33 -34 -34 -33 -33 -34 -36 -39 -42 -44 -45 -45 -45 -44 -41 -38 -39 -40 -42 -44 -44 -41 -39 -37 -35 -32 -29 -22 -13 -5 -4 -11 -19 -26 -31 -34 -36 -38 -41 -44 -49 -52 -53 -50 -44 -39 -36 -34 -36 -35 -34 -32 -29 -28 -27 -26 -26 -25 -26 -29 -36 -47 -50 -50 -48 -47 -45 -43 -41 -40 -40 -41 -41 -41 -41 -44 -46 -44 -40 -36 -31 -30 -32 -37 -39 -38 -38 -38 -40 -42 -45 -47 -49 -47 -45 -41 -38 -35 -37 -41 -45 -47 -45 -41 -39 -37 -36 -35 -35 -6 -7 -7 -7 -6 -7 -8 -8 -8 -8 -8 -7 -8 -9 -8 -8 -8 -8 -7 -6 -7 -8 -9 -9 -7 -6 -6 -6 -6 -6 -5 -5 -4 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -3 -2 -1 -1 0 0 0 0 0 -1 -2 -3 -3 -3 -1 -1 -1 -2 -3 -4 -5 -5 -6 -6 -7 -6 -6 -6 -5 -5 -4 -4 -4 -4 -3 -2 -2 -2 -2 -3 -3 -3 -3 -2 -0 1 0 -1 -3 -5 -6 -7 -7 -8 -8 -8 -9 -9 -8 -6 -6 -6 -7 -8 -8 -8 -8 -7 -6 -6 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -3 -2 1 3 5 8 10 11 12 13 13 13 12 12 12 12 12 11 9 7 7 8 9 8 6 5 5 6 6 6 6 5 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 -0 -1 -1 -2 -1 -1 -1 -0 1 2 3 4 4 4 4 3 3 1 1 1 2 3 3 2 -0 -2 -4 -4 -4 -2 -1 0 1 2 2 2 2 1 0 -1 -1 -1 -2 -4 -5 -7 -6 -5 -4 -3 -2 -1 -1 0 1 0 -0 -2 -4 -5 -7 -8 -11 -13 -12 -9 -6 -5 -4 -4 -2 -2 -1 0 1 2 3 4 3 1 -1 1 2 2 2 1 0 -2 -5 -7 -6 -4 -1 1 4 7 6 3 3 12 17 15 8 2 -6 -12 -16 -20 -23 -28 -33 -37 -40 -39 -37 -34 -29 -25 -21 -16 -12 -7 -3 -1 -3 -7 -14 -21 -25 -29 -31 -32 -33 -34 -34 -35 -34 -35 -36 -37 -40 -43 -44 -45 -46 -46 -44 -42 -43 -41 -40 -42 -44 -43 -40 -38 -36 -34 -32 -27 -18 -8 -3 -6 -13 -20 -25 -30 -33 -36 -40 -42 -46 -51 -55 -55 -50 -45 -40 -37 -36 -35 -35 -34 -31 -28 -27 -26 -26 -24 -23 -25 -31 -44 -50 -51 -49 -47 -45 -44 -42 -40 -39 -39 -40 -40 -40 -40 -43 -44 -42 -39 -34 -31 -31 -37 -42 -43 -42 -41 -42 -44 -48 -50 -51 -49 -46 -44 -41 -37 -36 -37 -41 -45 -46 -43 -40 -38 -37 -37 -37 -7 -7 -7 -6 -6 -7 -8 -8 -8 -7 -7 -7 -8 -8 -7 -7 -8 -8 -7 -7 -8 -9 -9 -8 -6 -6 -6 -6 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -2 -1 -1 -1 -1 -1 -0 0 0 0 0 -0 -0 0 1 1 0 -2 -4 -3 -3 -4 -4 -5 -5 -5 -5 -5 -4 -4 -3 -3 -3 -2 -1 -1 -1 -2 -3 -3 -3 -2 -2 -1 -1 -2 -3 -5 -7 -8 -8 -7 -7 -6 -6 -6 -6 -6 -5 -5 -6 -7 -10 -12 -11 -8 -6 -4 -2 -1 0 1 1 1 0 -1 -1 -2 -4 -5 -7 -8 -8 -7 -5 -3 0 4 6 8 10 12 13 14 14 13 13 13 11 9 8 7 8 7 6 4 3 2 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 3 3 3 2 2 1 0 -0 -2 -1 -2 -3 -3 -2 -0 1 3 5 6 6 6 6 4 3 3 2 4 5 5 4 2 0 -2 -3 -3 -3 -2 -1 -1 0 1 1 2 1 1 0 -0 -1 -1 -2 -4 -5 -6 -5 -3 -3 -2 -2 -1 1 3 3 3 0 -2 -3 -5 -8 -11 -11 -9 -8 -7 -7 -5 -4 -3 -2 -0 0 1 1 2 3 3 2 2 2 2 3 4 4 2 -1 -1 -1 -1 0 2 5 8 9 8 9 16 22 25 23 11 3 -3 -9 -16 -19 -23 -28 -33 -38 -39 -39 -36 -31 -27 -22 -17 -12 -7 -2 2 3 1 -5 -12 -18 -25 -28 -29 -30 -31 -32 -34 -35 -36 -36 -37 -39 -41 -42 -43 -44 -45 -45 -43 -43 -41 -40 -40 -42 -42 -40 -38 -38 -35 -34 -30 -23 -14 -7 -5 -7 -13 -20 -26 -31 -34 -39 -43 -47 -51 -55 -56 -54 -50 -45 -40 -36 -35 -35 -34 -32 -29 -27 -26 -26 -24 -23 -22 -24 -39 -48 -51 -51 -48 -45 -43 -40 -38 -37 -38 -39 -39 -38 -38 -41 -44 -45 -43 -39 -34 -31 -34 -41 -43 -42 -39 -39 -42 -48 -53 -53 -50 -47 -45 -42 -37 -34 -33 -36 -42 -45 -43 -41 -39 -39 -39 -38 -7 -7 -5 -5 -6 -7 -8 -8 -7 -7 -7 -8 -8 -7 -7 -7 -7 -7 -7 -7 -9 -9 -8 -6 -5 -5 -5 -6 -6 -5 -4 -3 -3 -3 -4 -3 -3 -3 -2 -3 -3 -3 -3 -2 -1 -1 -1 -1 -1 -0 0 1 2 2 2 2 2 1 0 -2 -3 -3 -2 -2 -2 -3 -3 -3 -3 -4 -4 -4 -3 -2 -2 -1 -0 0 -0 -1 -2 -3 -3 -2 -2 -2 -3 -5 -6 -8 -8 -9 -9 -9 -7 -5 -5 -5 -5 -5 -5 -4 -4 -5 -7 -9 -11 -8 -4 0 3 5 6 6 6 6 5 4 3 2 -0 -2 -5 -7 -10 -12 -13 -12 -11 -10 -7 -4 -2 0 4 7 10 12 12 11 10 9 7 5 4 4 3 2 1 1 1 2 3 4 4 5 5 5 5 5 6 6 6 6 5 5 5 5 5 4 4 3 2 2 1 1 -0 -2 -2 -3 -3 -2 -0 3 5 7 9 9 8 6 5 4 4 4 5 6 6 4 2 -1 -2 -3 -3 -3 -2 -2 -1 -0 1 1 1 1 0 0 0 0 -1 -2 -3 -4 -4 -4 -3 -3 -4 -1 1 3 5 3 1 0 -1 -3 -6 -8 -9 -9 -9 -8 -7 -5 -3 -2 -0 0 1 0 1 2 3 4 4 4 4 3 4 6 5 4 5 4 4 5 5 8 10 11 11 14 19 24 28 30 19 11 5 0 -7 -13 -18 -22 -27 -32 -35 -36 -35 -31 -27 -22 -17 -13 -9 -5 -1 2 3 1 -3 -8 -16 -23 -27 -29 -30 -31 -33 -34 -35 -37 -36 -37 -38 -40 -40 -42 -44 -44 -44 -44 -42 -39 -38 -37 -39 -39 -39 -38 -38 -36 -32 -28 -21 -15 -7 -3 -7 -13 -20 -25 -29 -34 -38 -44 -49 -53 -57 -56 -53 -48 -43 -38 -36 -35 -34 -33 -30 -28 -26 -26 -25 -23 -20 -18 -31 -43 -51 -53 -49 -46 -43 -39 -37 -37 -38 -39 -40 -39 -39 -40 -43 -46 -44 -41 -37 -33 -33 -40 -44 -45 -42 -40 -41 -46 -52 -53 -49 -46 -44 -41 -36 -32 -31 -32 -37 -41 -43 -42 -42 -42 -41 -40 -6 -5 -5 -5 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -8 -9 -9 -8 -6 -5 -5 -5 -5 -5 -5 -4 -3 -2 -2 -2 -2 -2 -2 -2 -2 -3 -2 -2 -1 -1 -1 -1 -1 -0 0 1 2 3 3 3 2 1 -1 -3 -4 -5 -2 -0 -0 -1 -1 -0 -1 -2 -3 -3 -3 -2 -1 0 1 0 -0 -2 -2 -2 -1 -1 -0 -2 -5 -7 -9 -10 -9 -8 -8 -7 -8 -7 -5 -5 -5 -5 -5 -4 -3 -2 -2 -3 -3 -1 2 5 8 10 10 9 7 4 2 2 2 2 2 0 -1 -2 -4 -6 -8 -10 -12 -13 -13 -13 -12 -12 -11 -10 -5 0 4 6 6 6 5 3 2 2 2 2 2 3 3 4 6 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 7 6 5 4 4 3 1 0 -1 -2 -2 -2 -0 2 5 7 9 9 8 7 6 5 5 5 6 6 6 5 3 1 -1 -2 -2 -3 -3 -3 -2 -1 -0 0 0 0 0 1 2 2 2 1 -1 -3 -3 -3 -4 -4 -4 -2 -0 2 2 3 3 2 2 -1 -4 -6 -8 -8 -8 -7 -6 -4 -2 -0 0 1 0 1 2 3 4 5 5 5 5 5 7 9 10 12 12 12 11 10 12 13 12 13 17 20 23 27 31 25 17 12 9 7 -2 -8 -13 -18 -23 -27 -29 -30 -29 -25 -21 -17 -14 -12 -9 -6 -2 1 3 3 -1 -7 -15 -22 -26 -29 -31 -32 -33 -35 -36 -36 -36 -35 -36 -35 -37 -40 -43 -44 -43 -40 -37 -37 -33 -34 -36 -38 -39 -39 -38 -35 -32 -28 -23 -14 -4 -3 -6 -13 -19 -25 -30 -35 -41 -47 -51 -56 -56 -53 -49 -46 -41 -38 -36 -35 -34 -32 -29 -27 -26 -25 -23 -21 -18 -25 -36 -47 -52 -49 -47 -44 -41 -39 -38 -39 -40 -41 -40 -40 -41 -43 -45 -44 -42 -39 -38 -35 -40 -45 -49 -48 -45 -43 -45 -49 -50 -47 -45 -44 -41 -36 -33 -31 -30 -33 -37 -41 -43 -45 -45 -43 -41 -6 -5 -5 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -8 -8 -8 -6 -5 -4 -5 -5 -5 -4 -4 -3 -2 -1 -1 -2 -2 -2 -2 -2 -2 -2 -2 -1 -1 -1 -1 -1 -0 1 1 1 2 2 2 2 0 -2 -4 -6 -6 -5 -1 1 1 1 1 1 -0 -1 -2 -2 -2 -1 -1 -0 -0 -1 -2 -2 -1 0 1 1 -2 -5 -7 -9 -9 -9 -8 -7 -7 -7 -7 -7 -6 -5 -5 -4 -3 -3 -2 -0 1 2 3 7 9 10 10 8 6 3 -1 -4 -7 -8 -7 -5 -3 -2 -1 -0 0 0 -1 -2 -4 -5 -6 -7 -9 -10 -12 -16 -15 -12 -7 -2 0 2 3 3 4 4 4 5 7 8 9 10 10 10 10 10 11 11 10 10 10 10 10 10 11 11 11 11 11 11 12 11 11 10 9 9 8 8 6 5 4 3 2 0 0 1 3 4 5 7 8 9 8 7 6 6 6 6 7 7 6 4 2 0 -1 -2 -2 -3 -3 -2 -2 -1 -1 -1 -0 0 2 3 4 4 3 1 -1 -2 -2 -3 -4 -4 -3 -1 2 3 4 4 4 2 -0 -2 -5 -6 -7 -7 -6 -5 -3 -1 0 1 0 -0 -0 0 1 3 4 5 6 7 9 11 15 19 21 20 16 14 17 17 16 16 19 20 22 26 30 29 23 18 17 17 14 10 3 -5 -11 -15 -18 -21 -23 -21 -18 -16 -15 -14 -14 -12 -8 -3 1 4 4 0 -6 -15 -22 -27 -29 -29 -30 -31 -33 -34 -33 -32 -31 -29 -31 -35 -39 -42 -42 -37 -34 -34 -29 -29 -31 -34 -38 -37 -37 -36 -35 -32 -29 -21 -10 -5 -3 -7 -13 -19 -25 -31 -37 -42 -48 -51 -53 -54 -52 -47 -44 -40 -37 -35 -35 -34 -32 -30 -29 -27 -25 -24 -21 -24 -30 -38 -46 -47 -47 -45 -43 -41 -40 -40 -40 -42 -41 -40 -41 -42 -44 -44 -44 -42 -41 -36 -37 -42 -50 -51 -48 -45 -45 -46 -46 -45 -44 -43 -40 -38 -36 -34 -30 -30 -33 -39 -44 -47 -46 -45 -42 -5 -5 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -7 -8 -9 -8 -7 -5 -4 -4 -5 -4 -4 -3 -2 -1 -1 -1 -1 -2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -0 1 2 2 2 2 2 1 1 -1 -3 -5 -6 -6 -3 0 1 1 1 1 1 -0 -1 -1 -1 -1 -2 -2 -2 -2 -3 -2 -2 0 1 0 -1 -4 -5 -6 -6 -5 -5 -5 -5 -6 -6 -6 -5 -5 -4 -3 -2 -2 -1 -2 -2 -0 3 6 8 8 5 0 -5 -6 -7 -8 -10 -13 -13 -12 -10 -8 -5 -3 -1 1 2 3 3 3 3 3 2 3 2 1 -2 -7 -10 -10 -5 -1 2 4 7 8 8 8 8 9 11 11 11 10 9 8 8 7 7 7 7 7 8 9 9 10 10 11 12 12 12 13 13 13 12 12 12 12 12 11 11 10 9 8 7 5 5 4 4 5 5 7 8 8 8 8 7 7 7 8 8 8 7 5 3 1 0 -1 -1 -1 -2 -2 -3 -3 -2 -2 -2 -1 1 3 4 5 4 2 1 0 -0 -1 -2 -3 -2 0 1 2 3 4 4 3 2 -2 -3 -5 -5 -4 -5 -4 -2 -0 0 -0 -1 -1 -2 -1 -0 1 3 6 8 10 13 17 19 21 21 18 17 21 23 23 23 22 22 22 24 29 30 28 24 22 22 22 21 18 12 5 -1 -6 -9 -13 -14 -14 -14 -15 -15 -16 -15 -14 -10 -5 0 3 4 0 -6 -15 -22 -26 -27 -28 -29 -30 -31 -31 -30 -27 -25 -25 -28 -33 -39 -40 -36 -33 -33 -27 -24 -24 -28 -35 -37 -37 -37 -37 -34 -31 -26 -18 -10 -3 -2 -6 -13 -19 -26 -32 -37 -43 -48 -51 -53 -53 -49 -45 -41 -39 -38 -38 -37 -36 -34 -32 -30 -28 -27 -25 -25 -27 -30 -37 -41 -43 -43 -42 -43 -41 -41 -41 -42 -41 -41 -41 -42 -42 -43 -44 -44 -41 -37 -36 -39 -46 -48 -46 -44 -45 -44 -42 -41 -42 -41 -40 -38 -37 -35 -31 -29 -31 -36 -43 -46 -47 -45 -43 -5 -6 -6 -7 -7 -7 -6 -6 -6 -6 -7 -7 -7 -7 -7 -6 -6 -8 -9 -10 -9 -6 -4 -3 -4 -5 -4 -3 -2 -1 -0 -0 -0 -1 -1 -1 -1 -1 -1 -1 -1 -0 -0 -1 -1 -1 0 2 2 2 2 1 1 1 0 -1 -3 -5 -5 -4 -1 0 1 0 0 0 0 -0 -0 -1 -1 -2 -3 -4 -4 -4 -3 -2 -0 1 -0 -2 -4 -5 -4 -3 -3 -3 -3 -3 -4 -4 -5 -5 -4 -3 -3 -2 -1 -1 -3 -6 -7 -4 1 4 4 1 -4 -9 -13 -13 -12 -11 -11 -13 -13 -13 -12 -10 -7 -5 -3 -1 -0 2 4 5 6 7 9 11 13 14 14 11 6 2 1 1 3 4 5 4 4 3 3 2 2 2 2 1 1 -0 -1 -1 -2 -2 -2 -1 0 2 3 4 5 7 7 8 8 9 10 10 10 11 11 12 13 14 14 15 14 14 13 12 11 10 9 8 8 8 8 8 9 8 9 9 9 9 9 9 9 8 7 5 3 2 1 -0 -1 -1 -2 -2 -3 -3 -3 -4 -3 -1 2 4 5 5 4 3 3 2 1 -1 -2 -1 -0 1 2 3 3 4 4 3 1 -1 -4 -4 -4 -3 -2 -1 -1 -0 0 -1 -2 -2 -2 -2 1 4 7 10 13 17 17 18 18 19 22 24 26 27 29 28 26 24 25 30 31 30 28 26 25 24 24 25 23 19 13 7 2 -3 -6 -8 -12 -13 -14 -15 -16 -17 -17 -13 -7 -2 2 3 1 -5 -13 -19 -23 -26 -27 -27 -28 -28 -27 -25 -22 -18 -19 -26 -33 -37 -37 -36 -35 -26 -21 -19 -21 -29 -34 -37 -38 -37 -35 -32 -29 -25 -16 -8 -2 -1 -5 -13 -20 -27 -32 -38 -43 -47 -50 -51 -49 -46 -43 -41 -39 -38 -38 -37 -36 -35 -33 -32 -31 -29 -27 -25 -26 -32 -40 -45 -48 -47 -46 -44 -43 -42 -41 -41 -41 -41 -41 -40 -41 -43 -45 -42 -38 -37 -38 -41 -42 -41 -41 -42 -41 -40 -40 -41 -40 -40 -39 -37 -35 -32 -31 -31 -34 -40 -45 -47 -46 -43 -5 -6 -7 -7 -6 -6 -6 -6 -6 -6 -7 -7 -7 -7 -6 -5 -6 -8 -10 -9 -8 -6 -4 -4 -4 -4 -3 -2 -1 0 0 0 0 0 -0 -0 -0 -1 -1 -1 -0 0 0 -0 -0 -0 1 2 2 2 1 1 1 1 0 -1 -3 -4 -3 -2 -0 0 0 -0 -0 -0 -0 -0 -0 -1 -2 -3 -4 -5 -5 -4 -2 -1 0 -0 -2 -4 -5 -4 -2 -2 -1 -2 -3 -3 -3 -3 -3 -4 -3 -3 -3 -2 -3 -4 -6 -10 -11 -7 -3 -1 -3 -6 -9 -11 -12 -12 -10 -8 -8 -9 -10 -10 -9 -8 -7 -6 -4 -3 -2 1 3 6 8 9 11 13 16 19 19 18 15 9 4 1 -1 -3 -4 -4 -5 -6 -6 -7 -7 -6 -5 -5 -5 -5 -5 -6 -7 -8 -9 -9 -9 -8 -6 -4 -3 -1 0 1 2 2 3 3 3 4 6 7 9 11 13 14 15 16 16 15 15 15 15 14 13 12 11 11 11 11 11 11 10 10 10 10 10 10 9 8 6 5 4 3 3 2 1 0 -1 -2 -3 -4 -5 -4 -2 1 4 6 7 6 5 4 3 2 0 -1 -0 0 1 2 3 4 4 3 3 2 -0 -2 -2 -2 -2 -1 1 2 3 2 0 -1 -3 -4 -1 2 4 7 11 16 16 17 18 21 24 26 27 28 28 28 27 26 27 31 31 30 29 28 27 26 25 25 25 25 23 20 13 5 1 -2 -7 -10 -12 -14 -16 -18 -19 -19 -17 -13 -5 1 4 4 -2 -10 -17 -22 -24 -24 -24 -24 -24 -23 -20 -16 -14 -19 -25 -31 -35 -37 -36 -29 -23 -18 -15 -21 -28 -35 -38 -36 -36 -33 -30 -28 -21 -13 -5 1 1 -6 -14 -22 -27 -32 -38 -43 -47 -49 -50 -48 -46 -43 -41 -39 -37 -36 -36 -35 -34 -33 -33 -31 -28 -26 -25 -30 -38 -45 -49 -48 -45 -44 -42 -40 -39 -39 -40 -41 -40 -39 -40 -43 -46 -42 -39 -37 -37 -37 -38 -37 -37 -38 -39 -41 -43 -44 -40 -40 -40 -40 -38 -34 -33 -33 -35 -39 -44 -48 -48 -45 -6 -7 -7 -6 -6 -5 -5 -5 -6 -6 -7 -7 -7 -6 -6 -6 -6 -9 -9 -8 -6 -5 -4 -4 -5 -4 -3 -1 -1 -0 0 0 0 1 0 -0 -1 -1 -1 -0 0 0 0 -0 -0 0 1 1 1 1 1 1 1 1 0 -1 -2 -3 -2 -1 -0 -0 -1 -0 -0 -0 -0 -0 -1 -2 -3 -4 -5 -5 -4 -3 -1 0 -0 -3 -4 -4 -4 -2 -1 -1 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -6 -8 -9 -11 -11 -8 -5 -5 -8 -9 -8 -6 -5 -4 -3 -2 -2 -2 -3 -3 -3 -3 -4 -4 -4 -3 -1 1 4 6 8 9 10 11 12 13 13 12 9 5 1 -2 -5 -8 -9 -9 -9 -8 -7 -7 -6 -5 -3 -2 -1 -1 -1 -1 -1 -2 -3 -5 -6 -7 -8 -7 -6 -5 -4 -3 -2 -2 -2 -3 -3 -3 -3 -2 0 2 4 7 10 12 13 14 15 16 17 17 16 16 15 15 15 15 15 14 13 13 12 12 12 12 11 11 10 9 8 8 7 7 6 5 4 2 0 -2 -4 -5 -5 -3 1 4 7 6 5 4 4 4 4 2 1 1 1 2 3 4 4 4 4 3 2 1 1 0 0 -1 -0 2 4 5 4 2 -1 -4 -3 -1 1 4 8 14 16 17 19 21 25 27 27 27 27 27 27 28 31 34 33 31 29 28 28 28 27 27 25 24 26 28 23 14 8 4 -1 -5 -9 -12 -15 -17 -19 -22 -23 -23 -15 -7 1 6 5 -1 -8 -15 -20 -20 -20 -19 -19 -21 -19 -16 -13 -16 -19 -25 -31 -35 -35 -31 -26 -19 -12 -15 -22 -30 -36 -36 -37 -36 -32 -30 -24 -18 -11 -1 4 2 -5 -13 -20 -26 -33 -40 -45 -48 -51 -52 -51 -48 -45 -42 -39 -38 -38 -37 -36 -35 -33 -32 -30 -28 -27 -27 -33 -41 -47 -47 -44 -42 -40 -39 -36 -36 -37 -39 -39 -39 -40 -43 -45 -42 -39 -37 -36 -34 -33 -33 -33 -35 -38 -43 -47 -47 -42 -41 -41 -42 -41 -37 -35 -35 -36 -38 -43 -47 -50 -48 -6 -7 -7 -6 -5 -5 -5 -5 -6 -6 -7 -6 -6 -7 -6 -6 -7 -9 -9 -8 -5 -4 -4 -4 -5 -4 -3 -2 -1 -1 -0 -0 0 1 0 -1 -1 -1 -1 -0 0 0 -0 -0 -0 1 1 1 1 1 2 2 2 1 0 -1 -2 -2 -1 -1 -1 -1 -1 -0 -0 -0 -1 -1 -1 -2 -3 -4 -4 -4 -3 -2 -1 -1 -2 -5 -4 -3 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -2 -2 -3 -4 -5 -7 -9 -10 -10 -9 -7 -4 -4 -5 -7 -5 -2 1 3 3 4 4 4 4 4 4 3 2 0 -1 -1 0 2 4 5 5 5 5 5 5 4 3 1 -1 -2 -4 -3 -4 -5 -7 -7 -7 -6 -4 -2 -2 -1 -1 0 1 2 3 3 4 3 4 4 3 2 1 -1 -2 -3 -3 -2 -1 -0 1 1 -0 -1 -3 -4 -6 -6 -6 -5 -4 -1 1 4 6 8 11 13 14 15 16 17 18 18 18 18 17 17 16 16 15 15 15 14 14 14 13 12 12 12 12 12 11 10 9 7 4 1 -2 -4 -4 -3 -1 3 4 5 6 6 8 8 6 4 2 1 1 2 3 4 5 5 5 5 5 4 4 4 3 2 3 4 7 8 7 4 -0 -2 -2 -1 2 5 11 14 15 17 20 24 26 27 27 27 27 27 29 33 36 36 33 31 29 29 30 31 32 28 25 25 28 29 22 15 8 4 -0 -4 -9 -12 -16 -19 -22 -25 -25 -21 -15 -6 3 8 7 2 -5 -12 -14 -15 -15 -15 -18 -17 -15 -14 -16 -16 -19 -24 -28 -30 -29 -26 -20 -12 -10 -15 -23 -33 -35 -37 -37 -34 -32 -27 -23 -17 -4 3 5 2 -6 -16 -24 -30 -35 -40 -46 -51 -54 -55 -52 -49 -45 -42 -40 -40 -40 -40 -39 -37 -35 -33 -31 -29 -26 -27 -33 -40 -43 -42 -41 -40 -39 -37 -35 -35 -35 -37 -39 -42 -44 -44 -41 -39 -37 -36 -34 -32 -31 -32 -35 -40 -45 -49 -48 -43 -41 -41 -42 -42 -39 -37 -36 -37 -38 -41 -46 -51 -52 -7 -7 -6 -5 -5 -4 -4 -5 -6 -6 -7 -6 -7 -7 -7 -7 -7 -8 -8 -7 -5 -4 -4 -4 -5 -4 -3 -2 -2 -2 -1 0 0 0 -1 -2 -2 -2 -1 -0 0 0 -0 -0 0 1 1 0 1 1 2 3 2 1 -0 -1 -2 -1 -0 -0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -2 -3 -3 -4 -3 -3 -2 -2 -3 -4 -4 -3 -2 -2 -2 -1 -1 -0 -1 -2 -3 -3 -3 -2 -2 -3 -4 -6 -8 -9 -9 -8 -5 -3 -3 -3 -4 -3 0 3 5 5 5 6 7 7 8 8 7 5 3 2 3 4 6 7 6 3 -0 -2 -3 -4 -5 -7 -8 -10 -11 -11 -8 -5 -3 -2 -2 -2 -2 -0 1 3 2 1 -0 -1 -1 -1 -0 1 1 1 3 4 5 5 5 4 2 0 -1 -1 -1 0 2 2 3 2 2 0 -1 -3 -4 -6 -7 -8 -8 -7 -5 -3 -0 3 5 8 11 13 15 17 18 19 19 19 18 18 18 19 18 18 18 18 17 17 17 17 17 17 17 16 14 13 10 7 5 2 -0 -2 -2 -1 1 3 5 7 9 10 10 9 6 3 2 2 2 4 5 5 6 6 7 7 7 7 6 6 5 5 7 9 11 10 8 3 1 0 1 3 6 9 11 13 17 23 26 26 27 27 28 28 30 34 37 37 36 34 32 32 33 34 36 32 29 27 28 30 28 22 14 9 5 1 -3 -9 -14 -18 -22 -24 -25 -24 -21 -15 -4 3 8 9 6 -1 -4 -7 -10 -10 -13 -13 -13 -15 -16 -14 -14 -17 -20 -23 -24 -23 -19 -11 -7 -9 -17 -26 -30 -35 -36 -34 -34 -30 -27 -24 -11 -1 5 7 2 -8 -16 -22 -29 -35 -42 -48 -52 -56 -55 -51 -48 -45 -43 -43 -43 -42 -41 -40 -38 -36 -34 -31 -26 -23 -24 -32 -38 -41 -41 -40 -39 -38 -36 -34 -34 -36 -40 -44 -45 -42 -39 -38 -38 -37 -34 -32 -30 -31 -34 -39 -43 -46 -44 -42 -41 -41 -41 -42 -40 -38 -37 -37 -39 -41 -44 -50 -52 -7 -7 -6 -5 -5 -4 -4 -5 -6 -6 -7 -6 -6 -7 -7 -7 -8 -8 -7 -6 -4 -4 -4 -4 -4 -4 -3 -3 -2 -2 -0 1 1 -0 -1 -2 -3 -2 -1 0 0 0 0 0 0 0 0 0 1 1 2 3 2 -0 -2 -2 -0 1 0 -1 -2 -2 -1 -1 -1 -0 0 0 -1 -1 -2 -3 -3 -3 -3 -3 -4 -4 -4 -3 -2 -1 -2 -2 -1 -0 0 -0 -1 -2 -3 -3 -3 -3 -3 -4 -5 -6 -7 -6 -5 -3 -3 -3 -2 -1 1 3 4 5 5 5 5 5 5 4 4 2 0 -2 -1 2 5 8 7 2 -3 -8 -12 -13 -14 -16 -17 -16 -16 -16 -14 -10 -7 -4 -2 -1 -0 0 1 1 2 1 -2 -4 -6 -8 -7 -7 -6 -5 -5 -4 -3 -1 1 2 3 3 2 0 -1 -2 -2 -2 -1 1 2 2 3 2 2 1 -0 -2 -4 -7 -8 -9 -10 -10 -9 -7 -4 -0 3 7 10 13 15 17 18 17 17 18 20 20 21 21 21 21 21 20 20 21 21 21 20 19 18 16 13 11 9 6 4 2 1 1 1 2 3 6 9 12 14 13 11 8 6 4 4 5 5 6 7 8 8 8 9 7 7 7 6 6 8 10 13 13 11 8 7 5 4 4 6 8 10 17 23 26 27 27 28 29 31 33 35 37 37 37 37 35 35 35 36 38 36 33 31 31 31 31 27 21 15 10 6 1 -4 -10 -15 -19 -22 -23 -24 -24 -21 -12 -4 3 9 12 11 7 2 -3 -5 -7 -9 -11 -14 -15 -14 -12 -11 -13 -16 -17 -17 -14 -8 -5 -7 -15 -22 -26 -30 -34 -35 -35 -32 -30 -29 -20 -8 2 8 9 0 -9 -17 -25 -31 -38 -45 -51 -54 -55 -53 -50 -48 -46 -45 -44 -43 -42 -41 -39 -37 -36 -34 -30 -24 -20 -27 -35 -40 -41 -40 -41 -40 -38 -35 -33 -35 -39 -43 -45 -40 -37 -38 -39 -39 -36 -33 -31 -31 -33 -36 -40 -44 -43 -42 -42 -43 -42 -42 -42 -40 -38 -38 -39 -41 -43 -47 -51 -6 -6 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -6 -6 -7 -7 -8 -8 -6 -5 -4 -4 -4 -4 -4 -4 -3 -3 -2 -1 1 1 1 -1 -2 -3 -3 -2 -1 0 0 0 0 0 0 -0 0 1 1 2 2 3 2 -1 -2 -1 1 1 -0 -1 -2 -1 -0 -0 0 1 1 1 -0 -1 -2 -3 -3 -3 -3 -4 -5 -5 -3 -2 -2 -2 -2 -1 -1 -1 -0 -1 -1 -2 -2 -2 -2 -2 -2 -2 -3 -4 -4 -4 -3 -2 -3 -3 -1 1 3 3 2 2 1 1 -1 -2 -3 -4 -5 -6 -5 -5 -1 2 3 1 -3 -7 -10 -13 -15 -16 -17 -19 -19 -19 -17 -16 -14 -11 -9 -7 -6 -5 -4 -4 -4 -4 -5 -5 -6 -8 -9 -9 -10 -9 -8 -8 -8 -9 -8 -7 -5 -3 -1 1 1 1 -1 -2 -4 -4 -5 -3 -1 -1 0 2 2 3 3 2 1 -1 -3 -5 -7 -9 -11 -11 -11 -10 -8 -5 -2 1 5 8 11 12 13 14 16 18 19 20 22 22 22 22 22 23 23 23 23 23 21 20 18 17 15 12 10 8 6 5 3 2 0 1 4 8 12 15 16 14 11 8 6 6 6 7 8 9 9 9 9 8 8 8 8 6 6 8 11 14 15 15 13 11 8 6 6 8 12 20 26 28 29 28 29 32 34 36 37 37 37 38 39 39 38 38 38 38 38 36 33 33 32 30 27 24 20 15 10 6 0 -5 -10 -14 -17 -21 -23 -25 -24 -19 -11 -3 5 12 16 15 11 6 2 -1 -4 -7 -11 -13 -14 -12 -8 -8 -10 -11 -11 -8 -4 -2 -4 -11 -18 -21 -23 -27 -31 -31 -30 -31 -33 -28 -17 -5 5 10 7 0 -8 -16 -23 -30 -37 -45 -51 -53 -53 -52 -49 -46 -45 -44 -43 -43 -42 -41 -39 -37 -35 -32 -27 -18 -20 -30 -37 -41 -41 -41 -41 -39 -36 -33 -33 -37 -42 -44 -41 -39 -38 -40 -40 -37 -34 -32 -32 -32 -34 -37 -41 -41 -41 -40 -40 -42 -44 -44 -43 -41 -40 -40 -41 -42 -45 -49 -6 -5 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -5 -6 -7 -7 -8 -7 -6 -4 -4 -4 -4 -4 -4 -4 -3 -3 -2 0 2 2 0 -2 -4 -4 -4 -2 -1 1 1 1 1 1 0 0 0 1 1 2 3 2 1 -1 -1 -0 0 -0 -1 -1 -0 1 1 1 1 1 2 1 0 -1 -2 -2 -2 -3 -4 -5 -5 -4 -2 -2 -2 -2 -1 0 -0 -0 -1 -1 -1 -1 -1 -1 -0 -1 -1 -1 -2 -2 -2 -2 -1 -1 -2 -2 0 3 2 -0 -3 -4 -5 -5 -6 -7 -8 -9 -9 -8 -6 -3 -0 -0 -3 -6 -8 -9 -10 -11 -12 -12 -13 -14 -15 -14 -12 -10 -9 -8 -8 -8 -8 -8 -8 -8 -8 -9 -9 -8 -7 -6 -5 -4 -3 -2 -1 -1 -2 -4 -5 -6 -6 -5 -3 -1 0 1 1 -0 -2 -3 -5 -5 -4 -4 -3 -2 -1 0 1 2 2 2 1 -0 -2 -3 -5 -7 -8 -9 -9 -10 -9 -8 -6 -4 -1 2 3 4 6 9 11 14 17 18 20 21 22 22 22 23 23 24 23 22 22 20 19 16 13 12 11 11 9 6 3 0 -0 2 6 11 16 18 17 15 11 9 8 9 11 11 12 11 11 10 9 8 8 7 5 6 8 12 14 17 17 14 12 11 10 12 15 22 27 30 32 31 33 34 35 36 37 36 36 37 40 41 41 41 42 39 38 36 34 34 33 30 26 24 21 18 15 11 6 2 -2 -7 -12 -17 -20 -22 -22 -21 -18 -11 -2 7 14 19 19 14 9 5 2 -1 -3 -8 -12 -13 -10 -8 -8 -7 -7 -4 -1 1 1 -3 -12 -15 -17 -21 -24 -25 -27 -31 -35 -33 -26 -15 -2 8 11 8 0 -10 -19 -26 -33 -40 -47 -51 -54 -55 -50 -47 -45 -44 -44 -43 -43 -42 -40 -38 -36 -34 -30 -21 -17 -21 -29 -37 -39 -39 -40 -39 -37 -34 -33 -34 -38 -41 -40 -38 -38 -39 -39 -38 -36 -34 -32 -32 -33 -34 -37 -39 -40 -40 -40 -41 -44 -47 -47 -45 -43 -42 -41 -42 -44 -46 -5 -5 -5 -5 -5 -5 -5 -5 -6 -6 -6 -5 -5 -6 -7 -7 -7 -6 -5 -4 -4 -4 -4 -4 -4 -4 -3 -3 -1 0 2 1 -1 -3 -4 -5 -4 -2 -1 0 1 1 2 1 1 1 0 0 1 2 2 2 -0 -1 -0 0 -0 -1 -1 0 2 3 2 1 1 2 2 1 1 -0 -0 -1 -1 -2 -4 -5 -4 -2 -1 -2 -2 -1 0 1 0 -0 -0 -0 -1 -1 -0 1 1 1 -0 -0 -1 -1 -1 -1 -1 -2 -2 -1 0 1 -2 -5 -7 -8 -7 -7 -7 -7 -7 -7 -6 -4 -2 1 0 -3 -6 -8 -7 -7 -6 -6 -6 -6 -7 -7 -7 -6 -5 -4 -3 -3 -4 -4 -5 -6 -6 -7 -7 -7 -7 -6 -5 -3 -1 2 5 7 9 9 9 8 6 3 1 -1 -2 -1 -0 1 1 1 1 -0 -2 -2 -3 -4 -4 -4 -4 -3 -3 -2 -0 1 1 1 1 0 -0 -1 -2 -3 -4 -5 -6 -7 -8 -8 -7 -6 -6 -5 -5 -3 -1 2 4 7 9 12 14 16 17 19 21 22 22 23 23 22 20 18 16 15 16 17 16 13 9 5 1 -0 0 4 10 15 18 19 17 15 13 12 13 13 13 13 13 13 11 10 9 8 6 5 6 8 11 15 17 16 15 15 15 16 19 23 27 30 33 36 37 35 32 32 35 36 36 37 39 41 43 44 45 42 39 37 35 34 33 31 28 24 21 20 19 17 13 9 5 -0 -6 -10 -13 -15 -16 -19 -21 -19 -12 -4 6 16 22 21 18 13 9 7 4 -2 -7 -11 -13 -12 -11 -9 -7 -4 -1 2 4 4 -4 -8 -11 -14 -17 -19 -23 -29 -35 -35 -32 -25 -14 2 10 12 7 -3 -13 -21 -28 -35 -43 -48 -53 -56 -54 -51 -47 -45 -44 -44 -44 -43 -42 -40 -37 -35 -32 -27 -18 -17 -22 -31 -34 -36 -38 -39 -38 -35 -33 -32 -34 -37 -37 -37 -38 -39 -40 -40 -38 -36 -34 -32 -32 -33 -34 -37 -39 -41 -40 -40 -42 -46 -49 -48 -46 -44 -43 -43 -44 -44 -4 -4 -5 -5 -5 -5 -5 -5 -6 -6 -6 -5 -5 -6 -6 -7 -6 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -1 0 1 0 -2 -4 -5 -5 -3 -2 -1 -0 0 1 2 2 1 1 0 -0 1 2 2 1 -1 -1 1 1 -0 -2 -1 1 3 3 1 1 1 2 2 2 1 1 1 0 -0 -2 -4 -4 -2 -1 -1 -2 -2 -1 0 0 -0 -1 -1 -1 -1 -0 1 2 2 1 1 1 0 -0 -1 -1 -3 -4 -5 -3 -2 -2 -5 -7 -7 -7 -5 -4 -4 -3 -1 1 3 4 5 4 -1 -4 -6 -5 -4 -3 -3 -3 -2 -2 -2 -2 -2 -1 -0 -0 -0 -1 -1 -2 -3 -4 -4 -5 -4 -3 -2 -2 -2 -1 1 4 7 9 11 12 13 13 12 10 8 5 4 2 1 1 1 1 2 2 1 1 0 -0 -2 -2 -3 -4 -4 -3 -3 -2 -1 -1 -0 -0 1 1 1 1 1 1 0 -1 -2 -4 -5 -6 -6 -7 -8 -8 -7 -6 -5 -5 -3 -1 1 3 5 8 10 13 17 20 21 21 19 17 16 16 18 21 21 20 17 13 8 3 0 -1 2 7 13 18 20 20 19 17 17 16 16 16 15 15 15 13 10 10 8 7 6 6 8 11 14 16 16 17 19 20 22 25 27 29 33 37 39 36 32 31 35 37 37 37 38 41 44 47 47 45 42 38 36 35 34 33 31 26 22 20 20 20 18 15 11 6 2 -1 -4 -6 -10 -15 -20 -22 -20 -16 -6 7 18 24 24 21 16 13 10 6 1 -4 -9 -11 -14 -15 -11 -7 -3 0 3 6 4 0 -3 -6 -8 -13 -18 -23 -29 -32 -33 -31 -27 -8 5 12 12 4 -6 -15 -23 -29 -37 -44 -51 -57 -59 -54 -50 -46 -45 -44 -45 -44 -43 -41 -39 -37 -35 -32 -21 -14 -14 -23 -31 -35 -37 -39 -39 -37 -34 -31 -31 -34 -36 -37 -37 -39 -41 -42 -41 -38 -36 -35 -33 -31 -32 -35 -39 -41 -40 -38 -40 -43 -48 -48 -48 -47 -45 -44 -44 -43 -4 -4 -5 -5 -5 -5 -5 -5 -6 -6 -5 -5 -5 -6 -6 -6 -6 -5 -4 -4 -4 -5 -4 -4 -4 -5 -4 -3 -1 1 1 -1 -3 -5 -6 -4 -3 -1 -0 -0 -0 0 1 2 1 0 -0 -0 2 2 2 0 -2 -0 1 2 0 -1 -1 1 2 1 1 1 1 2 2 2 2 2 2 1 -1 -2 -4 -3 -1 -1 -2 -3 -2 -1 -1 -1 -1 -1 -1 -1 -1 1 2 2 2 1 1 1 1 -0 -2 -5 -8 -10 -8 -6 -4 -4 -5 -5 -3 -1 -0 0 1 3 5 9 11 10 7 3 -1 -3 -2 -1 -1 -2 -2 -3 -3 -2 -2 -1 -0 0 0 -0 -1 -2 -2 -2 -2 -3 -3 -3 -3 -2 1 2 2 2 2 3 4 5 7 8 9 9 9 9 8 8 7 5 4 3 2 1 1 1 1 1 1 2 1 1 0 -0 -1 -1 -1 -1 -1 -1 -2 -2 -1 -0 1 2 3 3 4 4 4 3 2 0 -1 -2 -3 -5 -5 -6 -7 -7 -8 -8 -7 -6 -6 -5 -4 -1 2 6 10 13 14 13 12 12 15 20 24 25 24 21 17 12 6 2 -0 1 5 11 16 19 20 21 20 20 20 19 17 16 16 15 14 13 11 10 8 7 8 10 12 14 15 17 19 21 25 27 28 29 32 37 40 39 37 35 36 37 39 39 39 40 42 46 48 47 44 40 39 36 35 35 33 28 24 21 19 21 21 19 17 13 10 7 5 1 -4 -9 -14 -19 -22 -25 -18 -5 10 20 25 27 24 19 16 12 8 6 1 -2 -9 -17 -14 -11 -5 -1 -0 4 6 5 4 4 1 -5 -11 -16 -19 -25 -30 -32 -32 -23 -9 5 11 9 1 -7 -16 -23 -31 -40 -48 -56 -58 -57 -54 -50 -47 -46 -45 -45 -44 -42 -40 -38 -36 -35 -25 -15 -8 -14 -25 -32 -35 -38 -39 -38 -36 -32 -31 -32 -35 -36 -37 -38 -40 -41 -41 -40 -38 -35 -33 -31 -32 -34 -37 -40 -40 -38 -38 -40 -45 -47 -49 -49 -48 -45 -44 -42 -4 -4 -5 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -7 -7 -7 -6 -5 -4 -4 -5 -5 -5 -5 -5 -5 -4 -2 -0 1 1 -2 -4 -5 -6 -4 -2 -1 -0 -1 -1 -0 1 1 0 -1 -1 0 3 3 1 -1 -1 1 2 2 1 -0 -1 -1 -0 0 0 1 2 2 2 2 2 2 1 -0 -2 -4 -4 -2 -1 -2 -3 -3 -2 -1 -1 -1 -1 -2 -1 -1 1 2 2 2 1 1 1 1 1 -1 -5 -10 -15 -16 -13 -9 -5 -4 -3 -1 0 1 1 1 3 6 9 12 11 8 4 0 -1 -0 0 0 -1 -3 -4 -5 -6 -6 -5 -5 -4 -3 -3 -3 -3 -4 -4 -3 -2 -2 -2 -2 -3 -2 1 4 5 5 3 1 -0 -1 -1 0 1 2 2 3 4 5 6 6 5 5 4 4 3 2 2 2 2 3 3 3 4 4 4 4 4 4 3 2 1 -0 -0 -0 1 1 2 3 4 5 6 7 7 6 5 4 3 2 1 -0 -2 -3 -4 -6 -7 -7 -9 -10 -10 -10 -9 -7 -5 -2 1 3 5 7 10 16 21 24 25 25 23 19 15 10 5 2 1 3 9 14 17 19 20 22 22 22 21 19 17 16 15 14 13 12 10 9 9 10 12 12 15 16 18 20 25 28 30 30 32 36 39 40 38 37 37 37 39 39 38 38 40 43 47 47 45 42 42 38 36 36 34 30 26 22 20 19 20 21 21 20 17 15 11 7 2 -2 -6 -12 -20 -26 -25 -17 -2 10 21 27 29 25 22 17 14 13 9 8 0 -11 -11 -9 -5 -1 -2 -0 1 3 6 10 7 1 -5 -10 -11 -17 -23 -28 -32 -31 -24 -12 1 9 8 2 -8 -16 -25 -34 -43 -51 -56 -57 -56 -53 -50 -47 -45 -44 -44 -44 -42 -39 -37 -36 -30 -19 -6 -8 -19 -28 -34 -36 -38 -39 -38 -35 -32 -31 -32 -34 -35 -36 -37 -37 -37 -38 -37 -36 -34 -31 -31 -31 -33 -37 -38 -37 -36 -37 -40 -44 -48 -50 -50 -47 -45 -42 -5 -4 -4 -5 -5 -5 -5 -5 -5 -5 -6 -6 -6 -7 -7 -7 -7 -5 -4 -4 -5 -5 -5 -5 -5 -5 -4 -1 1 1 0 -2 -4 -5 -5 -3 -1 -0 -1 -1 -0 0 1 1 -1 -2 -1 1 3 2 0 -1 0 3 3 2 1 1 0 -0 -0 1 1 2 3 3 2 1 1 0 0 -2 -3 -3 -3 -1 -1 -2 -3 -3 -1 -0 -0 -1 -1 -1 -1 -0 1 1 1 1 1 1 1 1 1 -2 -7 -12 -17 -18 -15 -10 -6 -2 -1 -1 -3 -4 -6 -4 -0 4 7 6 2 -1 -3 -3 -2 -2 -3 -4 -6 -6 -6 -6 -6 -6 -7 -8 -8 -8 -7 -5 -4 -4 -3 -2 -1 -0 -0 -1 -2 -1 1 4 6 5 4 0 -2 -4 -4 -4 -3 -3 -3 -2 -0 2 4 5 5 6 6 6 6 5 4 4 3 4 5 5 5 6 7 7 8 8 7 7 6 5 5 4 3 3 3 3 4 5 6 7 8 9 9 9 8 8 7 6 5 4 3 1 -1 -2 -4 -5 -7 -8 -10 -10 -11 -10 -9 -9 -8 -7 -5 1 7 14 19 21 22 21 19 17 13 8 5 2 5 8 11 14 16 20 23 24 24 22 20 18 17 16 15 14 13 11 11 12 12 12 15 15 16 18 22 27 30 31 32 35 37 38 36 36 37 38 38 37 36 36 37 39 44 47 48 47 45 41 39 39 37 33 28 25 22 19 20 21 24 25 22 19 16 12 9 6 3 -2 -13 -20 -24 -23 -15 -3 10 21 27 28 26 21 17 16 14 14 10 -0 -1 -2 -2 -1 -3 -4 -6 -5 0 8 7 3 -2 -8 -8 -12 -18 -23 -29 -33 -33 -27 -13 1 9 9 3 -6 -17 -27 -36 -45 -52 -56 -58 -55 -52 -49 -46 -45 -44 -44 -43 -40 -38 -37 -35 -27 -8 -6 -14 -25 -33 -35 -37 -39 -40 -37 -33 -30 -28 -30 -32 -33 -34 -33 -33 -35 -36 -37 -36 -34 -32 -31 -31 -34 -35 -35 -35 -35 -37 -41 -45 -48 -50 -48 -46 -44 -5 -4 -4 -5 -5 -5 -5 -5 -5 -5 -6 -6 -6 -7 -8 -8 -7 -6 -5 -4 -5 -5 -5 -5 -5 -5 -3 -0 2 1 -1 -3 -5 -5 -4 -1 -0 -0 -1 -1 -0 1 1 -0 -2 -2 -0 2 2 1 -0 0 2 4 3 2 1 0 1 1 1 1 2 2 2 2 1 1 -0 -1 -2 -3 -4 -3 -1 1 -1 -2 -3 -2 -1 -1 -2 -2 -2 -1 -1 0 0 0 -0 -0 -0 0 1 1 0 -1 -4 -9 -13 -15 -13 -9 -5 -2 -3 -5 -8 -10 -10 -8 -4 -1 -1 -4 -8 -10 -9 -7 -6 -7 -9 -11 -13 -13 -12 -10 -8 -5 -3 -4 -5 -6 -5 -4 -2 -0 0 1 2 3 3 2 1 1 3 4 5 4 3 0 -1 -2 -2 -2 -1 -1 -1 -1 -1 1 2 3 4 5 6 7 7 6 5 5 4 4 4 4 4 4 5 6 6 7 7 7 7 7 6 5 5 4 4 4 4 4 5 6 8 9 9 10 10 10 10 10 10 10 9 8 6 5 3 2 0 -1 -3 -4 -6 -7 -9 -11 -12 -14 -15 -13 -9 -4 3 8 13 16 18 19 18 15 11 4 4 4 6 8 11 15 19 23 24 24 22 20 19 17 16 16 16 15 14 14 13 13 14 15 15 17 20 23 27 30 31 33 34 35 32 34 36 37 37 36 35 34 34 35 38 44 49 51 50 47 45 44 40 36 32 29 26 22 20 21 24 27 26 23 20 17 15 14 12 9 -1 -9 -15 -20 -20 -15 -4 9 19 25 26 24 19 17 16 17 16 10 9 6 4 2 -3 -6 -8 -9 -7 -0 4 4 -0 -6 -5 -8 -14 -19 -25 -31 -35 -35 -27 -12 2 10 10 2 -8 -18 -27 -37 -45 -52 -57 -55 -53 -51 -47 -46 -44 -44 -43 -41 -39 -38 -37 -34 -17 -9 -12 -21 -31 -34 -36 -39 -41 -39 -35 -31 -28 -27 -29 -31 -33 -33 -32 -34 -35 -37 -37 -35 -32 -30 -28 -30 -31 -32 -34 -36 -37 -39 -42 -45 -48 -48 -47 -45 -4 -4 -5 -6 -6 -6 -5 -4 -4 -5 -5 -6 -6 -7 -7 -7 -7 -6 -5 -5 -5 -6 -6 -6 -5 -4 -2 1 2 1 -2 -4 -5 -5 -3 -1 -0 -0 -1 -1 0 0 -0 -2 -3 -2 1 3 2 0 -0 1 3 4 3 1 0 0 1 2 2 2 2 2 2 1 0 -1 -1 -2 -3 -4 -3 -1 1 0 -2 -4 -4 -3 -2 -3 -3 -3 -2 -1 -0 -0 -1 -1 -1 -1 -1 -1 -0 0 0 1 -1 -4 -7 -10 -10 -7 -4 -3 -4 -6 -8 -8 -8 -6 -4 -4 -6 -9 -10 -9 -8 -6 -6 -6 -8 -9 -12 -13 -14 -14 -14 -9 -5 -3 -2 -1 -1 0 2 5 6 6 5 5 5 4 4 4 5 4 4 4 4 3 3 3 4 4 4 4 5 5 4 3 2 2 2 3 4 5 5 5 4 4 3 3 2 2 1 0 1 1 1 1 2 2 3 3 4 3 3 2 1 1 1 1 2 4 5 7 8 9 9 9 10 11 11 12 12 12 11 10 9 7 6 5 5 4 2 0 -2 -4 -7 -10 -14 -16 -17 -16 -11 -6 0 5 10 13 15 15 13 9 7 4 3 4 6 9 12 17 20 23 23 22 21 19 18 18 19 18 17 16 15 14 14 15 17 18 20 21 22 25 28 30 32 33 33 35 36 36 36 35 34 33 31 31 34 40 46 52 54 53 51 48 41 38 36 33 28 25 22 22 22 26 27 26 24 21 20 20 19 18 11 3 -4 -8 -14 -18 -15 -6 6 17 23 24 22 19 19 19 20 18 17 14 11 8 -1 -6 -9 -9 -8 -4 1 4 4 2 1 -2 -10 -16 -21 -28 -34 -38 -35 -25 -11 4 12 10 2 -8 -18 -27 -36 -44 -51 -54 -55 -53 -50 -47 -44 -43 -43 -42 -41 -39 -38 -38 -29 -16 -11 -14 -25 -31 -35 -38 -40 -40 -37 -33 -29 -27 -27 -29 -31 -33 -33 -33 -34 -36 -37 -36 -33 -30 -27 -27 -28 -29 -31 -34 -36 -38 -40 -42 -45 -47 -47 -46 -3 -4 -5 -6 -6 -5 -5 -4 -4 -5 -5 -6 -6 -6 -6 -6 -6 -5 -5 -5 -6 -7 -6 -6 -5 -3 -0 1 1 0 -2 -4 -5 -4 -2 0 -0 -1 -1 -0 0 -0 -1 -2 -3 -0 2 3 1 -0 -0 2 3 4 3 1 0 0 2 2 2 2 1 1 0 -0 -1 -2 -2 -3 -4 -4 -1 1 2 -2 -5 -6 -4 -3 -3 -3 -2 -2 -1 -0 -0 -0 -1 -1 -1 -1 -1 -1 -0 0 1 2 2 1 -2 -5 -6 -6 -4 -2 -2 -3 -3 -2 -0 -0 -2 -4 -7 -7 -6 -4 -2 -1 -0 -1 -1 -2 -3 -6 -8 -10 -12 -10 -8 -6 -4 -1 1 3 5 8 9 8 7 5 6 5 5 5 3 3 4 6 7 7 7 6 6 6 6 7 8 10 8 6 3 2 2 2 1 2 3 3 3 3 2 2 0 -1 -2 -3 -3 -3 -3 -4 -4 -4 -3 -2 -1 -1 -0 -1 -1 -2 -3 -2 -2 -1 0 2 4 6 7 7 7 8 10 11 12 13 13 13 12 11 9 8 7 7 7 6 4 3 2 -1 -5 -9 -13 -16 -16 -13 -9 -5 -1 3 6 10 12 12 9 6 3 2 2 4 7 11 14 17 19 20 21 21 20 20 21 21 21 20 18 17 16 18 20 22 22 22 21 21 24 26 29 32 32 34 34 33 34 34 33 31 29 29 31 36 43 49 54 56 54 51 44 41 39 37 32 29 27 25 22 24 27 28 27 25 24 23 24 24 21 13 7 3 -3 -13 -17 -14 -6 5 15 21 22 22 22 22 23 22 22 20 17 15 3 -5 -9 -10 -9 -5 -2 0 5 10 9 4 -5 -12 -17 -23 -31 -37 -38 -34 -24 -9 6 12 11 3 -8 -18 -28 -36 -45 -51 -55 -55 -52 -48 -44 -43 -42 -42 -41 -40 -39 -40 -37 -24 -13 -9 -20 -28 -34 -37 -39 -39 -37 -35 -31 -28 -27 -27 -30 -32 -33 -33 -33 -35 -37 -38 -36 -33 -29 -28 -27 -28 -28 -29 -32 -35 -39 -42 -45 -48 -48 -47 -3 -4 -5 -6 -6 -5 -5 -4 -4 -5 -6 -6 -7 -6 -6 -6 -6 -6 -5 -6 -6 -7 -7 -6 -4 -2 1 2 1 -0 -3 -5 -5 -3 -1 1 -0 -1 -1 -0 -0 -1 -2 -2 -1 1 2 1 -1 -2 -0 1 2 2 1 0 0 1 2 2 1 0 -1 -1 -1 -1 -2 -2 -3 -4 -5 -3 0 2 0 -4 -6 -5 -3 -2 -2 -1 -1 -1 -1 -1 -1 -0 -0 0 -0 -1 -1 -0 0 1 1 3 4 4 2 -0 -3 -5 -3 -0 2 2 4 5 6 3 0 -3 -4 -3 -1 1 1 2 3 4 4 5 4 2 -0 -2 -5 -6 -6 -5 -4 -2 1 4 6 8 9 9 7 4 6 5 4 5 3 3 5 7 8 8 8 7 6 5 4 4 5 6 6 5 3 2 3 2 1 1 1 2 2 1 1 1 0 -1 -2 -3 -3 -3 -3 -4 -5 -6 -6 -5 -4 -3 -2 -2 -2 -2 -3 -4 -4 -3 -3 -2 -1 1 3 4 4 5 6 7 8 9 10 11 12 12 11 9 8 7 7 7 6 6 6 5 4 1 -3 -7 -11 -12 -11 -9 -7 -5 -2 2 7 10 10 9 6 3 1 0 2 6 9 11 13 14 17 19 21 22 23 25 25 24 22 21 20 21 23 26 26 25 23 22 22 24 26 29 29 30 30 30 31 31 30 29 29 30 32 35 40 45 50 54 55 53 48 45 43 41 39 36 33 30 26 24 26 28 29 27 26 25 26 28 26 21 16 13 8 -2 -10 -14 -12 -4 6 15 21 23 24 25 24 22 23 22 20 21 9 -2 -9 -10 -10 -8 -5 -3 6 13 12 6 -1 -8 -12 -18 -26 -34 -38 -38 -33 -23 -6 7 14 12 3 -9 -20 -30 -41 -50 -54 -55 -53 -48 -44 -42 -42 -41 -41 -40 -40 -40 -40 -31 -20 -9 -19 -26 -32 -37 -38 -38 -38 -36 -33 -30 -27 -27 -28 -31 -32 -32 -32 -34 -37 -39 -38 -35 -32 -29 -28 -27 -27 -28 -29 -32 -36 -40 -45 -49 -51 -49 -3 -5 -6 -6 -6 -6 -5 -5 -5 -5 -6 -7 -7 -7 -6 -6 -6 -6 -6 -7 -7 -7 -7 -6 -4 -1 2 2 1 -1 -3 -5 -4 -2 0 1 -1 -1 -1 0 -1 -2 -3 -2 0 2 1 -0 -2 -2 -1 1 1 0 -0 -0 1 2 2 1 -1 -2 -2 -2 -2 -1 -2 -2 -4 -5 -5 -2 1 1 -2 -6 -5 -3 -1 0 0 0 0 -1 -2 -2 -1 -0 1 1 1 0 -0 1 1 2 3 4 6 6 4 0 -3 -3 -2 2 4 5 7 8 6 2 -0 -1 -1 -1 -1 -2 -3 -3 -1 1 3 4 4 4 3 3 2 1 -1 -2 -3 -1 1 4 6 7 7 6 3 -0 3 3 3 5 4 5 6 7 7 7 6 5 4 2 1 -0 -1 -1 -2 -2 -2 -1 0 1 1 0 0 1 1 1 2 2 2 2 1 1 1 2 1 1 -1 -2 -3 -3 -3 -2 -2 -1 0 0 -0 -0 -1 -1 -2 -2 -2 -1 0 1 2 2 2 3 3 4 5 6 7 8 9 9 8 7 6 5 6 7 8 9 9 7 5 2 -2 -5 -6 -6 -5 -6 -6 -4 -0 4 8 10 9 7 4 1 -0 1 4 7 9 10 11 14 17 20 23 26 28 28 27 26 25 24 25 28 29 28 27 26 24 23 24 25 27 27 27 28 28 29 29 30 31 32 34 36 38 40 43 47 51 53 52 49 47 46 44 41 38 35 32 28 26 26 28 29 28 27 27 31 29 26 23 21 17 10 1 -6 -8 -7 -1 7 16 22 25 26 25 22 23 23 21 23 13 0 -9 -11 -12 -11 -10 -7 3 10 10 6 1 -5 -9 -14 -22 -31 -36 -39 -38 -32 -19 -4 9 18 10 -0 -12 -23 -35 -44 -50 -53 -52 -48 -45 -42 -42 -40 -40 -40 -41 -41 -41 -39 -31 -15 -21 -25 -30 -35 -36 -37 -37 -36 -34 -31 -28 -27 -27 -30 -32 -33 -33 -33 -35 -37 -38 -36 -33 -30 -28 -28 -28 -27 -28 -30 -34 -39 -44 -48 -51 -51 -4 -6 -7 -7 -6 -6 -5 -5 -5 -5 -6 -7 -8 -8 -7 -7 -6 -7 -7 -7 -8 -8 -8 -6 -3 0 2 1 -1 -2 -4 -5 -4 -2 0 0 -1 -1 0 1 -1 -2 -3 -2 0 1 0 -1 -2 -1 0 1 1 -1 -2 -1 1 3 2 -0 -2 -3 -3 -3 -2 -1 -1 -2 -4 -5 -5 -1 -0 -1 -4 -6 -5 -2 1 1 1 1 1 -1 -2 -2 -1 1 1 1 1 1 1 2 3 3 4 5 6 5 2 -1 -2 -2 0 3 4 5 5 4 -0 -2 -3 -3 -3 -4 -7 -9 -10 -11 -9 -7 -4 -2 -1 -0 1 2 3 3 2 1 -0 0 1 3 5 6 5 2 -2 -4 -0 2 3 5 4 4 4 4 3 2 2 1 0 -1 -1 -3 -4 -5 -6 -7 -7 -6 -5 -4 -3 -3 -3 -3 -2 -2 -1 0 1 2 3 3 4 4 5 5 5 4 3 1 1 0 0 0 1 2 3 4 4 4 3 2 1 1 1 2 2 2 2 2 2 1 1 2 3 4 5 6 6 6 5 4 3 3 5 8 10 10 10 9 5 2 -0 -1 -1 -3 -4 -6 -5 -2 3 7 9 9 8 6 3 1 1 4 6 9 9 10 12 15 18 22 24 27 29 29 28 26 25 27 30 31 30 29 27 25 22 22 23 24 25 26 26 28 29 31 32 34 35 36 36 36 36 39 45 52 54 54 52 51 49 46 43 41 38 33 28 25 25 28 30 30 30 33 31 29 28 27 25 21 14 6 2 -2 -3 1 10 19 24 25 25 22 22 22 22 21 13 2 -9 -14 -15 -16 -15 -13 -4 2 5 4 3 -2 -7 -12 -17 -26 -33 -38 -39 -37 -30 -18 -3 15 15 8 -3 -15 -26 -36 -44 -48 -49 -49 -48 -44 -41 -39 -39 -40 -42 -43 -42 -42 -39 -27 -25 -25 -27 -31 -33 -34 -35 -36 -36 -33 -30 -28 -27 -28 -30 -32 -32 -31 -31 -33 -35 -35 -34 -32 -29 -28 -28 -27 -27 -28 -32 -36 -41 -45 -49 -50 -5 -7 -7 -7 -7 -6 -6 -5 -5 -5 -6 -7 -8 -8 -7 -7 -7 -7 -8 -8 -8 -8 -8 -6 -3 1 2 0 -2 -4 -6 -5 -3 -1 -0 -1 -1 -0 1 1 -1 -3 -3 -2 0 0 -1 -2 -2 -1 1 2 1 -2 -2 -1 1 2 1 -0 -2 -3 -2 -2 -2 -2 -2 -3 -5 -5 -4 -1 -2 -4 -7 -7 -5 -2 -0 0 -0 0 0 -1 -1 -1 0 1 1 1 1 1 2 2 3 3 3 3 2 0 -2 -2 -2 -1 1 2 2 2 0 -2 -5 -6 -7 -8 -9 -10 -11 -12 -12 -13 -12 -11 -9 -7 -5 -4 -4 -3 -1 0 1 1 1 1 1 3 5 6 4 1 -2 -3 -0 2 3 3 1 -1 -2 -3 -3 -3 -3 -3 -3 -3 -2 -3 -4 -4 -5 -6 -7 -8 -8 -8 -7 -7 -7 -7 -7 -6 -5 -4 -3 -2 -1 -0 0 1 2 3 4 4 5 5 3 2 1 -1 -1 0 1 3 4 5 6 6 6 5 5 5 5 5 5 4 4 3 2 1 1 1 2 2 3 4 5 4 3 1 0 2 6 9 12 13 12 9 6 3 1 0 -1 -3 -5 -4 -2 2 6 8 10 10 9 6 4 3 4 7 9 10 10 11 13 16 18 22 28 30 31 30 28 29 32 34 34 33 31 27 23 21 20 22 23 24 25 27 29 30 31 33 35 35 36 36 34 34 38 48 53 55 55 55 53 49 47 46 43 37 31 26 22 25 28 31 33 35 33 31 31 32 32 31 28 21 15 8 2 -0 5 13 19 23 24 23 22 22 21 17 11 3 -7 -14 -18 -19 -18 -18 -12 -6 -1 2 2 -1 -5 -10 -14 -21 -28 -34 -39 -39 -35 -28 -17 6 16 16 7 -4 -15 -26 -36 -45 -49 -51 -50 -47 -43 -40 -39 -40 -42 -43 -43 -42 -42 -37 -30 -25 -24 -26 -28 -31 -35 -38 -38 -35 -32 -29 -27 -26 -27 -29 -30 -29 -29 -30 -33 -35 -35 -34 -31 -28 -27 -27 -26 -27 -29 -32 -37 -41 -45 -48 -6 -7 -8 -7 -7 -7 -6 -6 -5 -6 -6 -7 -8 -8 -8 -7 -7 -8 -8 -9 -9 -9 -8 -6 -2 1 2 -1 -3 -5 -7 -6 -3 -0 1 -1 -1 -0 1 0 -2 -4 -4 -3 -1 -0 -1 -3 -3 0 1 1 0 -2 -1 0 2 2 1 -0 -1 -2 -1 -1 -2 -2 -2 -4 -6 -6 -3 -2 -3 -5 -8 -7 -4 -2 0 0 -1 -1 -0 -1 -1 -0 0 0 -0 -0 -0 0 0 1 0 -1 -2 -3 -4 -3 -2 -1 -1 -1 -1 -1 -1 -2 -2 -4 -4 -6 -7 -8 -9 -9 -8 -7 -7 -8 -8 -7 -6 -4 -3 -2 -2 -3 -3 -3 -2 -1 -1 -0 1 2 5 6 6 6 5 3 1 1 -0 -2 -5 -7 -9 -10 -9 -8 -7 -7 -6 -5 -4 -3 -3 -2 -3 -3 -4 -5 -7 -7 -7 -8 -8 -8 -8 -8 -8 -7 -7 -6 -6 -6 -5 -4 -3 -1 -0 1 2 3 3 3 1 -1 -2 -3 -3 -3 -2 -1 1 3 5 7 8 8 9 9 8 8 8 7 5 4 3 2 1 1 1 2 4 5 4 2 -1 -2 -0 2 6 11 14 16 15 12 7 4 2 1 -2 -4 -4 -2 1 4 6 9 11 11 9 6 5 6 8 10 11 11 11 12 13 16 22 28 32 33 32 32 34 36 37 37 35 31 27 23 20 20 21 23 24 26 28 29 30 32 33 34 34 34 34 34 35 41 46 50 54 56 55 51 48 48 46 41 35 29 23 22 25 30 33 35 35 34 34 34 35 37 38 34 28 20 11 5 3 7 12 19 22 23 23 23 22 17 12 5 -3 -12 -17 -19 -18 -20 -17 -12 -7 -1 0 -1 -4 -9 -13 -18 -24 -29 -35 -37 -36 -34 -28 -10 9 19 15 7 -5 -16 -28 -40 -47 -50 -51 -48 -44 -40 -38 -38 -39 -43 -43 -43 -42 -42 -34 -26 -23 -22 -24 -28 -33 -39 -40 -39 -35 -30 -27 -26 -26 -27 -28 -28 -28 -29 -31 -34 -35 -34 -32 -29 -28 -27 -26 -26 -26 -28 -31 -36 -40 -44 -6 -7 -7 -8 -8 -8 -7 -6 -6 -6 -7 -8 -9 -9 -8 -7 -7 -8 -9 -9 -10 -10 -9 -5 -2 1 1 -1 -4 -6 -7 -5 -2 0 1 -0 -1 0 0 -1 -4 -4 -4 -3 -1 -1 -2 -2 -2 1 1 0 -1 -1 0 2 2 2 0 -0 -1 -1 -0 -1 -2 -3 -4 -6 -6 -5 -2 -1 -3 -6 -7 -6 -3 -1 -0 -1 -2 -1 -1 -1 -1 0 0 -0 -1 -1 -1 -0 0 0 -1 -3 -6 -8 -7 -4 -1 1 0 -1 -2 -3 -3 -3 -2 -1 -1 -3 -4 -5 -6 -5 -4 -4 -4 -5 -5 -5 -4 -2 -1 -0 -0 -1 -2 -3 -3 -3 -3 -2 -2 -1 1 4 9 11 9 4 -1 -4 -6 -7 -8 -8 -9 -10 -10 -11 -10 -10 -9 -9 -8 -6 -5 -3 -2 -2 -1 -2 -3 -3 -4 -4 -4 -4 -5 -5 -6 -6 -7 -7 -7 -8 -8 -8 -7 -5 -3 -2 -1 0 2 2 2 2 -0 -2 -3 -5 -6 -6 -6 -4 -2 1 4 7 9 10 11 11 10 10 9 8 6 5 3 2 0 -0 1 3 5 4 2 -1 -3 -3 -2 2 8 13 17 18 15 12 8 4 1 -2 -3 -3 -1 0 1 3 6 11 13 12 9 6 8 10 11 12 11 11 11 12 16 22 28 32 34 35 36 36 38 39 38 36 33 28 23 21 21 23 23 24 25 26 27 29 30 31 32 32 33 33 32 35 39 43 48 52 53 52 48 47 48 44 38 32 26 22 23 26 31 35 36 36 36 36 35 36 39 38 36 29 20 13 7 4 6 13 20 23 25 25 25 21 15 9 2 -6 -13 -16 -17 -20 -20 -17 -12 -6 -3 -3 -5 -9 -12 -17 -21 -24 -29 -34 -36 -37 -36 -24 -2 15 18 13 3 -8 -20 -32 -41 -47 -50 -49 -45 -41 -37 -35 -38 -42 -44 -44 -43 -44 -37 -28 -22 -21 -22 -25 -30 -36 -39 -40 -37 -33 -29 -27 -26 -26 -27 -28 -27 -27 -29 -31 -33 -33 -33 -30 -28 -27 -26 -26 -26 -26 -27 -31 -35 -38 -6 -6 -7 -8 -8 -8 -7 -6 -6 -6 -7 -8 -9 -9 -8 -7 -8 -8 -9 -10 -10 -10 -9 -4 -1 1 0 -2 -4 -6 -6 -4 -2 -1 -0 -1 -0 0 -1 -2 -5 -5 -4 -2 -1 -2 -2 -2 -1 0 0 -1 -1 0 2 3 3 2 1 -0 -1 -1 -0 -1 -2 -4 -5 -7 -6 -4 -1 -1 -4 -6 -7 -6 -2 -1 -1 -3 -3 -2 -2 -1 -0 0 -0 -1 -1 -1 -0 1 1 1 -1 -4 -7 -9 -6 -2 1 3 1 -1 -3 -4 -3 -2 -1 1 2 0 -1 -2 -3 -3 -3 -3 -4 -5 -6 -6 -5 -4 -2 -1 -0 -0 -1 -2 -3 -3 -4 -4 -4 -6 -8 -3 3 5 2 -3 -6 -6 -5 -5 -3 -3 -3 -4 -7 -9 -10 -11 -10 -10 -9 -8 -8 -6 -5 -4 -2 -1 -0 -0 -0 -0 -0 0 0 -0 -1 -2 -3 -4 -5 -6 -7 -8 -8 -6 -5 -3 -2 -1 0 1 2 3 2 1 -0 -2 -3 -5 -7 -7 -7 -5 -3 -0 2 5 8 10 11 10 10 10 9 8 7 5 3 1 -0 1 3 5 5 3 0 -3 -5 -5 -2 3 9 15 18 18 15 11 7 3 -0 -1 -0 0 -1 -2 -2 3 10 14 15 10 9 9 10 11 12 11 10 9 11 15 20 26 32 35 36 35 36 37 39 39 37 33 29 26 24 24 23 23 22 23 24 25 27 29 29 30 30 29 28 31 34 38 41 46 49 50 49 47 47 45 40 34 28 24 22 21 26 32 36 37 38 37 36 36 37 38 39 35 27 21 15 9 4 7 14 20 24 25 29 26 21 15 8 0 -7 -12 -14 -20 -21 -19 -15 -10 -8 -7 -7 -9 -13 -16 -19 -21 -24 -29 -33 -35 -37 -31 -18 -1 14 16 9 -0 -12 -24 -34 -42 -47 -49 -47 -43 -39 -33 -36 -40 -44 -46 -44 -45 -40 -31 -23 -22 -21 -23 -27 -33 -38 -39 -38 -34 -31 -28 -27 -26 -26 -27 -26 -26 -26 -28 -30 -32 -33 -32 -29 -28 -27 -28 -27 -26 -25 -26 -28 -31 -6 -6 -7 -8 -8 -8 -7 -7 -6 -6 -7 -8 -9 -9 -8 -8 -8 -9 -10 -10 -11 -11 -8 -3 -0 1 -1 -3 -5 -5 -5 -4 -3 -2 -2 -1 0 0 -1 -4 -5 -4 -3 -2 -3 -4 -3 -1 -0 -0 -1 -1 -0 1 3 3 3 2 0 -1 -1 -1 -1 -2 -3 -4 -6 -6 -5 -2 -1 -2 -4 -7 -8 -5 -2 -1 -2 -5 -4 -3 -2 -1 0 -0 -1 -2 -1 -0 1 1 2 2 0 -2 -4 -5 -3 0 3 4 1 -1 -3 -3 -2 -0 2 3 3 1 -0 -2 -3 -4 -5 -5 -6 -7 -7 -7 -7 -6 -4 -2 -1 -0 -1 -1 -2 -2 -3 -4 -4 -6 -10 -4 -1 -1 -5 -6 -7 -5 -2 1 2 2 2 -0 -3 -5 -6 -7 -7 -7 -7 -6 -6 -5 -5 -4 -3 -2 -0 0 1 1 1 1 2 3 2 2 1 0 -1 -3 -4 -5 -6 -6 -5 -3 -1 -0 0 1 2 3 4 4 4 3 1 -0 -3 -5 -6 -7 -7 -6 -4 -1 2 5 8 9 10 10 9 9 9 8 6 4 1 0 1 2 5 6 5 2 -3 -6 -8 -7 -3 4 12 16 18 17 14 10 6 2 1 2 1 -0 -4 -4 0 7 15 14 12 9 8 9 10 11 11 10 10 11 14 18 26 31 33 33 33 35 37 38 38 36 33 30 28 27 24 22 20 20 20 22 24 26 27 28 27 25 25 29 32 35 37 40 45 48 49 48 47 45 42 37 32 27 22 16 19 27 34 38 39 39 38 36 36 37 40 40 33 27 24 18 12 6 8 14 19 23 29 29 27 23 16 8 1 -5 -10 -17 -19 -19 -18 -14 -14 -13 -11 -11 -13 -16 -18 -19 -19 -23 -28 -33 -36 -35 -29 -19 -4 8 11 6 -3 -18 -28 -36 -43 -48 -49 -47 -42 -36 -35 -37 -41 -45 -46 -45 -41 -34 -27 -24 -22 -21 -23 -30 -35 -37 -36 -34 -32 -30 -28 -26 -26 -25 -25 -24 -24 -25 -27 -30 -32 -32 -31 -29 -28 -29 -28 -28 -26 -24 -25 -28 -5 -5 -6 -7 -8 -8 -8 -7 -7 -7 -7 -8 -9 -8 -7 -8 -8 -9 -10 -11 -12 -11 -7 -2 0 0 -2 -4 -5 -5 -4 -3 -3 -3 -3 -1 0 -0 -2 -4 -5 -4 -3 -3 -4 -5 -3 -1 0 -1 -1 -1 -0 1 2 2 2 1 -1 -2 -2 -3 -3 -3 -4 -5 -6 -5 -3 -1 -0 -2 -5 -7 -7 -4 -1 -1 -3 -6 -5 -3 -2 -0 -0 -1 -2 -2 -1 0 1 1 2 2 2 1 -0 -1 0 2 3 3 1 -0 -2 -2 -0 1 3 3 2 -0 -2 -3 -5 -6 -6 -7 -7 -7 -7 -7 -6 -6 -4 -2 -0 1 1 1 0 0 -0 -1 -1 -1 -3 1 -1 -4 -6 -5 -3 -1 2 4 4 3 2 1 1 -0 -2 -3 -4 -5 -6 -6 -5 -4 -2 -1 -0 0 1 1 1 1 1 1 2 2 2 3 2 2 1 -1 -2 -3 -4 -6 -6 -5 -3 -1 0 1 2 3 4 5 6 6 5 4 2 -0 -2 -4 -6 -7 -8 -6 -3 0 4 6 8 8 9 9 9 9 9 8 6 3 1 -0 1 4 6 6 4 -1 -5 -9 -10 -6 1 8 14 17 17 15 12 7 4 4 4 3 -0 -5 -5 -2 7 12 13 12 9 8 9 10 11 12 12 11 11 13 18 25 29 31 31 32 34 36 37 36 35 33 30 28 25 23 22 20 20 20 22 24 26 27 26 23 24 28 32 34 34 37 41 45 47 48 49 48 46 41 36 32 27 20 15 21 29 37 39 40 40 39 37 38 41 43 38 33 30 27 22 15 10 9 13 19 26 30 30 29 24 16 9 2 -5 -12 -16 -19 -20 -18 -18 -18 -15 -14 -14 -15 -17 -18 -15 -17 -23 -29 -33 -35 -34 -31 -22 -7 3 6 3 -7 -17 -29 -40 -46 -50 -50 -47 -42 -37 -36 -38 -42 -44 -45 -43 -38 -31 -26 -22 -21 -20 -24 -29 -32 -34 -34 -33 -31 -29 -26 -25 -25 -25 -24 -24 -24 -25 -29 -31 -32 -32 -30 -29 -29 -29 -29 -27 -24 -22 -23 -5 -5 -6 -7 -9 -9 -8 -8 -7 -7 -8 -8 -8 -7 -7 -8 -8 -9 -10 -11 -12 -11 -6 -1 1 -1 -3 -5 -5 -4 -3 -3 -4 -4 -4 -2 -0 -1 -3 -5 -5 -4 -3 -3 -4 -4 -2 -0 0 -1 -2 -1 -0 1 2 1 1 -1 -2 -3 -3 -4 -4 -5 -6 -6 -6 -4 -1 -0 -1 -3 -6 -7 -6 -1 -0 -1 -3 -5 -4 -3 -1 -1 -1 -2 -2 -2 -1 -0 0 1 2 4 4 3 2 1 1 2 2 2 1 0 -1 -1 0 2 2 1 -0 -2 -3 -4 -5 -6 -6 -5 -5 -5 -5 -5 -5 -4 -2 -1 1 2 3 3 4 5 5 5 4 4 5 5 1 -1 -1 -0 2 3 4 3 1 0 -0 1 2 2 0 -1 -3 -5 -6 -7 -6 -5 -4 -2 -1 -0 0 1 1 1 1 1 1 1 1 1 1 0 -0 -1 -1 -2 -3 -5 -6 -6 -5 -3 -1 1 2 3 4 4 5 6 7 6 6 4 2 -0 -3 -5 -7 -7 -6 -3 -0 3 6 7 8 9 9 9 10 10 10 8 5 3 1 2 4 6 8 6 2 -3 -7 -9 -7 -2 5 12 14 16 16 13 9 7 7 7 6 1 -4 -5 -1 6 11 13 12 11 10 9 9 10 12 12 12 11 14 19 24 27 30 31 32 34 35 36 35 34 32 28 26 25 25 23 22 22 22 23 26 28 27 24 25 28 31 33 32 35 38 41 44 46 48 49 49 46 43 39 36 31 23 20 23 33 38 40 41 41 40 39 42 44 40 37 35 34 30 23 16 12 11 16 23 28 31 33 30 23 16 10 2 -6 -12 -17 -21 -21 -21 -21 -19 -17 -16 -16 -16 -17 -13 -13 -18 -24 -28 -33 -36 -36 -32 -20 -8 2 5 2 -7 -19 -32 -42 -48 -50 -50 -48 -42 -37 -35 -38 -40 -42 -42 -40 -35 -29 -23 -19 -17 -18 -21 -26 -29 -32 -32 -32 -30 -27 -26 -25 -25 -25 -25 -24 -25 -27 -30 -31 -32 -31 -29 -29 -29 -30 -28 -25 -22 -20 -6 -6 -6 -8 -9 -9 -9 -8 -7 -7 -8 -8 -8 -7 -7 -8 -8 -9 -11 -12 -12 -10 -4 -0 0 -2 -4 -5 -5 -4 -3 -3 -4 -5 -4 -2 -1 -2 -4 -6 -5 -4 -4 -4 -3 -2 -0 0 -0 -1 -1 -1 -0 1 1 1 0 -1 -2 -3 -3 -4 -5 -6 -7 -7 -5 -2 -1 -0 -1 -4 -7 -7 -3 1 1 -0 -2 -4 -3 -2 -1 -1 -2 -2 -2 -2 -2 -1 -1 0 3 4 4 3 2 2 1 2 2 2 2 0 -2 -3 -1 1 2 0 -1 -1 -1 -2 -3 -4 -3 -2 -0 0 -1 -2 -3 -2 -2 -0 1 3 5 7 9 11 12 12 9 7 6 4 3 3 4 5 5 4 3 0 -2 -2 -1 1 2 2 1 -0 -2 -4 -6 -7 -8 -9 -8 -8 -7 -5 -4 -3 -3 -2 -2 -1 -1 -0 -0 -0 -1 -1 -1 -2 -3 -3 -3 -4 -5 -6 -6 -5 -3 -1 1 3 3 3 4 4 6 7 7 7 6 4 1 -1 -3 -5 -5 -5 -3 1 4 6 8 9 9 10 11 12 13 13 12 10 7 4 4 5 7 8 7 4 1 -4 -6 -5 -2 4 9 13 16 17 15 13 11 11 12 9 4 -1 -3 0 6 10 13 14 13 11 9 9 10 12 12 11 12 14 18 24 28 30 31 32 32 33 33 33 32 29 28 27 28 27 25 24 24 24 26 27 27 26 25 26 27 30 31 34 36 38 41 43 46 47 48 49 48 47 44 41 34 26 22 27 35 39 41 43 42 41 41 42 41 39 38 38 35 30 24 18 14 17 22 26 29 33 33 29 24 17 9 2 -6 -14 -19 -22 -23 -22 -22 -21 -20 -19 -17 -15 -11 -10 -15 -19 -23 -29 -35 -37 -36 -30 -20 -8 2 5 0 -10 -22 -33 -41 -46 -50 -50 -45 -39 -33 -34 -36 -38 -39 -40 -37 -31 -25 -20 -16 -14 -15 -20 -24 -28 -31 -31 -30 -28 -26 -25 -24 -24 -25 -25 -25 -26 -28 -30 -32 -31 -30 -29 -29 -30 -29 -26 -23 -19 -5 -6 -7 -8 -9 -9 -9 -9 -8 -8 -8 -8 -8 -7 -7 -7 -8 -9 -11 -12 -11 -8 -2 -0 -1 -4 -5 -6 -5 -4 -3 -3 -5 -5 -4 -1 -1 -2 -5 -7 -6 -4 -3 -4 -4 -1 1 1 -0 -1 -1 0 1 2 1 0 -1 -1 -2 -2 -3 -4 -5 -7 -7 -7 -4 -2 -2 -2 -4 -6 -6 -4 -0 2 1 -1 -3 -4 -2 -1 -1 -1 -1 -1 -0 -0 -1 -2 -1 0 2 3 2 2 1 1 2 2 3 4 3 -0 -4 -4 -2 -0 0 0 0 0 1 0 -1 -1 -0 1 2 2 1 -0 -2 -2 -2 -2 -1 1 4 7 10 14 18 18 14 9 2 1 4 6 6 5 4 2 -1 -2 -1 0 2 3 3 3 2 2 0 -2 -4 -7 -10 -12 -13 -14 -14 -12 -11 -9 -8 -7 -6 -5 -4 -3 -2 -2 -1 -1 -1 -2 -2 -3 -4 -5 -5 -5 -6 -5 -4 -2 -1 1 2 3 3 3 3 5 6 7 7 7 5 3 1 -1 -3 -3 -3 -1 3 6 8 10 11 11 12 14 15 16 17 17 15 12 10 8 9 10 10 9 8 5 2 1 0 2 6 10 14 18 19 18 16 15 16 16 13 8 3 0 2 6 11 14 15 14 12 11 10 10 11 11 11 12 15 19 25 28 29 30 30 30 31 31 30 30 30 30 29 29 28 27 26 25 26 26 25 25 23 22 23 26 29 32 34 37 39 41 43 44 45 48 49 50 49 47 41 33 25 23 29 35 40 43 43 43 42 41 41 40 40 40 39 36 31 25 20 20 22 25 27 29 31 32 29 24 17 9 1 -7 -14 -20 -22 -22 -23 -23 -23 -22 -20 -14 -10 -9 -12 -16 -19 -25 -32 -36 -38 -36 -30 -20 -5 5 6 -0 -12 -24 -33 -41 -46 -49 -47 -40 -32 -31 -31 -34 -37 -40 -38 -33 -27 -21 -17 -12 -11 -14 -19 -24 -28 -30 -30 -28 -27 -25 -24 -24 -25 -26 -26 -27 -28 -30 -31 -32 -32 -31 -29 -29 -28 -27 -25 -20