CAPE 12 11 10 9 8 7 6 5 5 4 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 4 6 8 11 14 17 20 22 24 25 26 28 31 34 35 35 34 32 30 28 26 24 23 22 20 18 17 15 15 16 19 22 27 32 37 41 44 44 43 42 42 42 41 39 38 38 39 42 48 54 61 68 76 83 88 91 93 94 95 95 96 97 100 102 106 107 108 105 101 100 102 105 104 104 102 101 100 99 100 101 102 102 102 100 100 100 98 95 92 89 88 91 95 99 100 98 88 83 82 84 85 85 88 95 100 103 103 98 93 89 88 92 95 94 91 89 87 85 83 81 82 82 81 79 77 77 78 79 80 80 80 81 84 88 92 96 99 101 102 103 103 104 104 105 106 105 104 102 101 102 103 102 100 96 93 90 88 86 85 8 7 6 5 4 3 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 1 2 3 4 5 6 8 10 13 15 17 19 21 23 26 28 30 30 28 27 27 28 29 28 28 27 25 22 19 17 15 15 16 18 23 27 32 37 41 43 44 46 47 48 48 47 45 43 41 40 42 45 50 55 62 68 74 80 85 89 93 94 95 96 99 103 108 112 113 111 106 104 104 107 108 108 107 105 101 98 96 96 98 100 102 103 104 103 100 96 92 89 88 90 93 94 94 92 85 81 79 78 78 80 81 86 92 100 106 107 103 97 93 93 96 100 101 100 96 89 86 86 85 83 81 77 74 75 77 79 80 82 82 81 83 86 90 94 97 99 101 102 102 101 101 103 104 104 104 102 102 102 104 104 103 100 96 93 91 89 87 5 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 1 3 4 4 4 5 6 7 10 12 13 15 17 19 22 23 22 21 19 18 19 21 24 26 28 28 26 24 22 19 18 17 18 21 24 28 32 36 39 42 44 46 49 51 52 52 51 50 48 47 47 48 50 52 56 61 67 74 80 86 90 92 93 95 97 100 105 109 110 110 108 108 110 110 110 110 109 105 101 98 97 98 101 104 106 106 104 101 98 95 93 92 91 89 85 81 79 78 77 76 74 74 74 76 77 82 90 102 106 106 103 98 95 96 102 105 106 104 100 94 93 91 87 82 76 72 72 73 75 78 80 81 83 85 87 90 93 95 98 100 101 101 100 101 101 102 103 103 102 102 102 104 105 105 104 100 97 94 92 91 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 2 2 3 3 3 4 6 7 8 9 11 13 14 15 15 14 12 10 10 11 13 16 19 22 23 23 23 22 20 20 20 22 24 26 29 32 34 37 40 43 46 50 53 54 55 55 54 54 54 53 53 52 52 55 59 64 70 76 80 84 86 88 90 91 93 97 100 102 104 106 107 108 109 111 111 109 106 104 102 102 102 105 107 107 105 102 99 98 97 96 93 86 78 71 70 72 72 72 70 68 66 66 70 75 83 91 96 101 102 100 96 95 100 104 108 109 108 104 102 100 94 87 79 74 71 70 71 72 74 78 82 85 88 91 94 96 98 100 101 101 101 102 102 102 102 102 102 102 102 104 105 107 107 105 102 98 96 94 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 5 5 6 6 8 8 9 9 9 9 8 6 6 6 8 10 12 13 15 16 18 19 20 21 22 23 24 26 28 31 34 37 40 43 47 51 53 55 55 55 55 56 56 56 56 56 57 58 60 62 66 69 73 77 80 82 83 84 86 88 90 92 94 97 101 105 108 110 110 110 108 106 104 103 103 105 106 104 102 102 101 99 97 92 84 76 72 70 70 69 68 65 63 61 61 64 70 79 86 91 93 95 96 94 93 94 98 103 107 108 107 105 104 102 97 89 80 74 70 68 67 69 73 78 82 87 91 95 97 99 100 101 103 104 104 103 103 103 103 103 103 103 104 105 106 108 107 105 103 100 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 4 3 3 4 4 4 5 6 8 7 6 5 4 4 5 6 7 8 9 11 13 14 15 16 17 18 20 22 25 28 32 35 38 42 46 49 51 52 53 54 54 54 54 55 57 58 58 58 59 60 62 66 69 72 75 76 78 79 80 82 84 82 83 86 92 98 103 108 110 110 108 106 104 102 103 104 104 103 103 102 100 94 88 83 81 81 79 75 70 65 61 59 58 59 61 64 70 78 84 87 88 89 91 90 89 91 94 98 102 103 103 105 108 108 102 93 84 75 69 66 66 69 73 78 84 89 94 96 97 98 100 103 105 105 104 104 103 103 104 104 104 105 106 107 108 108 107 106 104 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 1 1 1 2 2 3 4 5 5 5 4 4 4 4 4 4 5 5 6 6 7 7 8 9 10 11 14 18 22 26 29 33 37 41 44 46 49 50 51 51 50 51 52 53 54 55 56 58 60 64 66 69 71 72 74 75 77 79 81 80 77 76 78 83 90 99 105 108 109 108 106 104 104 105 106 105 104 103 98 93 89 88 92 94 89 81 72 65 61 60 60 60 60 59 62 67 72 76 80 84 88 90 90 89 88 89 92 96 97 100 104 109 108 104 96 86 76 70 68 69 71 75 79 84 89 92 93 95 97 102 104 105 104 103 103 104 105 105 106 106 107 108 109 109 108 107 108 107 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 4 7 11 15 18 22 27 32 36 41 45 48 49 49 48 47 46 47 49 52 56 59 63 66 69 70 72 73 75 77 79 81 82 80 77 76 76 80 86 93 100 106 108 107 106 107 108 109 108 105 101 96 92 92 96 102 100 95 86 76 68 66 65 65 64 61 57 56 58 62 67 73 79 88 95 97 94 89 86 88 91 93 96 99 102 104 105 103 98 90 81 75 72 71 73 76 79 82 85 88 91 94 99 102 104 103 102 102 103 104 105 106 106 108 109 110 110 110 111 112 112 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 10 15 20 28 35 41 46 48 47 46 45 45 46 49 51 54 58 62 66 70 73 75 78 80 81 82 84 85 85 84 84 84 84 86 91 96 101 103 106 109 111 111 108 105 100 96 94 96 100 103 100 95 87 80 75 75 74 72 69 64 59 54 53 55 59 66 75 87 98 104 103 97 92 91 93 95 96 98 98 99 101 103 104 102 95 87 80 76 74 74 75 76 78 81 86 90 95 100 102 102 101 101 101 102 103 104 105 107 108 110 111 113 114 116 116 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 19 28 36 43 46 46 46 46 46 47 48 48 50 54 59 64 70 74 77 80 81 82 83 86 89 91 93 93 92 90 90 92 93 96 101 106 108 108 105 102 100 98 97 98 100 99 95 91 87 84 82 84 83 79 74 68 63 58 54 53 54 60 70 85 98 106 109 110 103 99 98 98 99 100 98 98 100 103 106 107 104 98 90 83 79 77 75 75 75 77 80 85 90 95 98 100 100 100 100 100 101 102 103 105 107 110 112 114 117 118 118 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 11 20 29 38 43 46 47 47 46 46 46 47 49 52 57 62 67 72 74 76 78 80 82 85 89 94 97 97 96 94 92 92 93 97 100 101 99 98 98 99 100 101 101 99 95 92 89 87 86 87 88 87 82 76 71 66 62 59 55 53 56 66 80 94 105 112 115 114 110 106 102 99 99 100 102 104 105 107 108 108 104 99 94 90 86 83 80 78 78 78 81 85 90 93 96 97 99 99 99 100 100 102 104 106 109 112 115 118 119 119 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 12 22 31 38 42 44 45 45 46 46 46 47 49 54 59 63 66 68 71 74 75 77 81 85 90 94 96 96 96 94 94 95 95 95 94 93 94 96 99 101 101 98 94 91 90 89 88 88 88 87 84 80 75 70 67 65 62 57 55 62 74 88 101 111 115 117 117 115 110 101 96 99 104 107 108 108 109 109 108 106 102 100 97 94 91 88 84 82 81 82 84 88 91 94 96 97 98 99 100 101 102 105 108 112 116 118 120 120 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 16 25 32 38 42 44 45 45 44 43 44 48 51 55 58 60 64 67 69 71 73 76 80 86 91 94 97 97 97 96 94 93 92 91 89 89 91 94 96 94 92 91 91 91 89 89 88 86 85 84 82 78 74 72 69 64 59 60 69 80 93 106 112 117 120 120 118 108 99 98 101 104 104 106 108 109 110 110 108 106 103 102 101 99 95 91 87 84 83 84 87 89 92 94 96 98 99 100 101 103 106 110 115 118 120 120 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 13 22 30 37 41 42 42 41 41 42 44 46 48 51 54 58 62 65 68 70 71 74 78 83 89 94 98 100 99 97 95 93 91 89 87 87 87 88 90 91 92 92 92 91 90 88 86 85 86 86 85 82 79 76 71 66 63 65 73 84 95 105 113 118 122 121 114 104 97 93 92 92 96 102 107 110 112 113 110 108 107 107 106 104 100 95 90 86 85 85 86 89 92 95 97 99 100 101 103 105 108 113 116 119 121 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 12 23 31 36 38 38 38 39 40 41 41 41 43 46 50 55 60 64 67 69 71 73 77 82 88 95 99 100 100 99 96 94 92 90 88 85 85 88 94 97 97 95 93 90 88 86 84 85 86 87 86 83 80 76 73 69 66 68 74 82 93 102 109 116 118 116 106 94 85 81 82 87 93 100 107 112 115 113 110 109 109 109 107 104 100 96 92 89 88 87 88 91 94 97 100 101 103 104 105 107 110 113 118 121 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 11 21 29 35 38 38 39 38 35 31 29 29 32 36 42 49 56 61 65 68 71 73 76 80 87 92 97 100 102 100 98 97 95 93 89 87 89 95 100 103 101 97 93 89 86 83 83 84 85 84 82 81 80 78 75 71 67 67 71 77 84 92 100 107 110 103 91 81 77 79 83 87 93 101 109 114 114 111 109 108 107 106 104 102 99 97 94 92 91 92 94 96 98 101 103 106 107 107 108 109 112 115 119 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 18 27 34 38 38 34 26 17 14 12 14 17 22 29 37 45 53 60 66 70 73 76 80 84 90 95 101 103 104 103 102 99 96 93 92 95 100 103 104 101 98 94 90 86 83 83 82 81 79 79 81 82 81 78 72 66 65 66 68 73 79 89 95 94 88 80 78 81 83 86 90 97 106 112 112 109 106 104 104 104 103 102 100 99 98 97 97 98 99 100 102 104 106 109 111 111 111 111 112 114 116 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 14 24 31 33 30 21 12 9 3 2 2 4 8 14 22 32 44 54 63 70 74 77 80 83 87 94 101 106 108 108 106 103 100 98 98 99 101 102 102 101 100 98 93 89 86 84 80 77 76 79 83 85 84 79 71 66 64 63 64 66 73 80 84 84 82 80 83 85 87 90 98 107 111 110 106 104 103 104 105 105 104 103 102 101 101 102 104 105 106 107 108 111 113 114 114 115 114 114 113 113 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 9 17 21 22 20 16 14 11 7 4 2 2 1 5 13 24 36 48 59 68 74 78 80 83 87 94 102 108 110 109 107 105 103 101 100 99 100 101 102 103 103 100 96 92 88 84 80 76 78 82 85 85 82 76 70 67 65 64 64 66 70 76 80 82 81 84 85 88 92 100 108 113 113 110 106 105 107 109 110 109 108 106 105 105 106 107 108 111 113 115 116 115 114 116 117 118 116 113 112 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 11 15 17 19 20 20 17 13 9 5 4 6 12 22 33 45 56 66 74 80 84 86 88 94 100 106 108 107 105 104 103 102 100 100 101 103 104 105 103 99 95 92 90 88 82 80 79 80 81 80 78 76 73 72 70 68 66 68 72 76 78 79 81 83 86 92 100 109 116 119 118 114 111 112 113 115 115 115 113 112 111 110 110 111 114 117 118 117 115 112 114 118 119 117 113 111 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 7 13 18 21 24 27 29 28 23 18 16 17 20 27 36 46 56 67 76 84 88 89 91 94 99 102 103 102 101 100 100 101 101 102 103 105 106 105 102 99 96 95 94 91 86 81 78 76 76 77 78 79 80 78 74 71 69 70 71 71 72 75 78 82 87 95 105 115 122 125 123 120 118 117 118 120 121 120 118 116 114 114 114 116 118 120 120 120 117 117 119 120 116 111 110 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 15 19 23 27 31 33 32 30 28 29 32 37 43 51 60 69 79 86 91 93 95 98 100 101 101 100 98 97 98 99 100 101 103 105 107 106 104 102 100 98 96 93 89 84 78 76 76 79 82 85 84 81 77 74 71 68 67 66 68 70 73 77 84 94 106 117 125 128 127 126 123 121 122 124 124 122 120 119 118 118 117 118 119 121 123 121 120 118 115 111 108 108 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 9 14 17 18 20 25 30 33 35 37 40 45 49 53 57 63 71 79 86 92 96 99 102 104 105 105 104 100 97 95 95 96 98 102 107 110 111 110 108 104 101 98 95 92 87 83 80 81 84 87 88 86 83 80 76 73 69 66 65 64 64 65 68 76 88 102 114 124 128 130 129 127 124 124 124 123 122 121 121 120 118 117 119 121 120 118 117 116 115 114 112 109 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 10 14 11 10 13 18 24 30 36 42 48 54 58 60 62 66 70 76 83 91 97 101 105 108 112 114 110 104 98 94 93 93 97 103 109 113 115 114 111 107 103 100 97 94 91 87 85 86 88 90 90 88 86 84 81 76 73 70 66 63 58 55 57 65 76 92 109 120 128 131 131 129 125 122 120 119 120 122 121 120 120 122 122 118 114 114 117 119 122 122 118 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 11 9 6 6 9 14 21 28 36 43 51 57 62 63 64 65 67 72 80 89 96 101 107 112 116 115 111 105 100 97 96 96 98 103 108 114 115 114 112 109 106 103 100 96 93 91 90 91 93 93 93 92 92 90 87 83 79 74 68 61 54 50 49 54 66 83 101 115 124 130 130 128 124 119 116 116 117 118 121 124 128 126 118 113 113 116 120 123 126 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 5 5 5 6 8 11 17 23 30 39 47 56 62 65 66 65 66 71 80 88 94 100 106 111 114 113 110 107 104 102 100 97 96 99 105 110 112 114 114 112 109 105 102 99 97 95 94 94 94 95 96 97 98 97 94 90 84 77 69 62 54 48 46 50 59 73 89 105 118 124 127 126 122 117 113 112 113 119 128 133 129 118 113 114 117 120 122 125 128 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 4 4 5 7 11 15 22 31 41 52 61 66 69 70 71 76 83 90 94 98 104 109 112 112 111 109 108 106 102 97 94 96 100 106 110 113 114 113 110 107 105 103 100 98 96 94 95 96 100 102 104 103 99 93 86 80 73 64 57 50 48 50 55 63 76 93 107 117 122 121 116 110 106 108 116 127 133 126 120 117 119 122 123 123 125 128 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 6 10 15 24 35 46 57 65 72 75 79 85 91 95 97 100 104 108 112 113 112 112 111 110 105 98 94 95 99 104 108 111 112 112 110 108 107 105 102 99 96 96 96 99 103 107 109 108 103 97 92 85 77 68 60 54 51 50 52 59 70 83 96 106 111 110 105 102 105 112 122 127 126 126 127 129 128 127 127 128 129 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 4 6 11 18 26 36 47 58 68 77 86 94 100 102 102 103 106 109 112 113 113 114 114 112 107 101 97 97 98 100 104 107 110 110 110 109 108 106 103 101 99 99 100 103 107 110 112 112 108 102 96 88 81 74 66 59 54 53 56 62 68 74 82 92 98 97 99 104 110 116 120 125 129 132 133 132 132 131 131 131 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 5 8 11 15 22 32 46 61 75 88 96 100 103 104 105 107 108 111 112 113 114 115 113 109 105 102 100 98 99 102 105 107 108 109 109 108 107 105 103 103 103 105 107 110 112 115 113 109 103 97 92 87 81 73 66 63 62 62 64 67 71 76 83 91 99 107 114 117 118 122 126 129 131 133 135 135 134 133 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 4 4 5 6 12 21 35 50 66 77 84 89 95 100 104 107 108 110 111 111 113 113 112 111 109 106 103 100 100 102 105 106 107 107 108 108 107 106 105 106 107 108 110 112 114 114 112 108 100 97 96 93 88 82 77 72 69 67 68 73 78 82 90 102 112 122 122 120 120 120 122 125 131 137 140 139 134 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 3 3 3 4 8 14 24 36 48 59 69 78 86 93 98 103 106 108 109 108 109 109 111 112 110 109 106 104 102 102 103 104 104 105 106 106 105 105 106 107 108 108 110 111 112 112 109 103 98 96 96 95 93 89 82 77 75 75 77 81 85 92 101 110 117 120 118 115 113 113 118 127 135 139 136 129 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 3 4 4 5 8 14 24 38 53 64 73 80 86 92 97 102 104 104 104 104 106 108 109 110 109 108 106 105 104 104 104 103 103 103 103 103 103 104 105 105 106 107 109 112 112 108 103 99 97 97 96 93 88 85 83 82 83 83 84 88 94 100 104 107 107 106 106 108 113 120 126 127 123 114 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 3 4 4 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 1 2 3 3 4 6 12 26 42 56 65 71 76 80 86 91 96 99 99 99 100 100 102 106 107 108 108 107 107 106 105 104 103 102 101 100 100 100 100 100 100 101 105 110 113 113 110 106 102 98 95 92 90 89 89 89 87 85 84 85 88 90 91 93 96 101 105 107 107 110 111 108 102 97 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 3 4 5 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 18 32 46 57 62 68 73 78 83 88 92 94 95 94 95 96 98 100 102 103 104 105 105 106 106 105 103 102 101 100 98 97 96 95 96 99 105 110 113 114 113 111 107 100 93 90 91 92 93 89 86 85 85 85 86 86 88 92 98 102 102 99 96 93 88 84 87 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 1 0 2 4 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 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 1 4 9 18 29 39 47 56 64 71 77 82 87 90 92 91 91 91 91 92 94 96 97 98 100 102 103 103 102 101 101 101 100 98 96 94 93 94 98 103 107 110 111 112 113 108 102 96 94 96 96 92 89 87 87 86 87 87 89 91 94 94 91 87 82 77 73 77 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 2 5 9 15 25 36 48 60 70 77 84 88 88 87 86 86 86 87 88 90 90 91 92 94 96 98 98 98 97 98 98 98 96 94 92 91 92 95 97 99 101 103 106 107 107 106 104 100 97 95 94 92 91 90 92 93 93 92 92 89 86 83 79 74 72 76 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 2 4 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 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 9 16 28 42 55 67 76 83 84 82 81 80 82 84 86 88 88 88 88 89 90 92 94 93 92 90 91 93 94 94 93 90 90 88 87 87 88 90 93 96 100 105 108 104 99 96 95 95 94 96 98 100 98 95 92 90 86 84 82 80 78 79 83 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 8 8 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 5 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 1 2 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 1 3 4 5 6 8 13 21 35 49 62 72 76 75 74 75 76 78 80 83 86 88 88 88 87 88 89 88 86 84 83 85 88 91 93 93 91 87 83 80 80 80 82 84 89 94 100 101 99 97 95 95 95 98 101 102 102 98 95 93 90 87 85 85 85 84 83 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 9 10 8 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 7 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 1 2 5 6 7 8 9 10 12 19 31 44 55 63 66 67 68 69 70 71 72 75 79 82 83 82 82 82 83 83 80 79 80 83 86 90 93 93 88 84 81 80 79 78 79 81 85 89 94 96 97 97 96 96 97 98 100 101 99 97 96 94 92 90 91 92 91 86 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 9 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 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 4 9 11 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 6 8 11 14 16 16 18 22 29 39 48 55 60 62 64 64 63 62 63 65 68 69 68 69 72 76 80 80 79 78 78 80 84 89 90 89 87 86 86 85 82 82 82 83 85 89 93 96 97 97 98 98 98 98 99 98 97 95 95 94 93 94 95 93 87 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 10 10 8 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 11 15 11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 7 10 15 20 22 24 25 27 30 37 45 51 56 59 60 59 58 57 56 56 56 54 54 57 62 70 75 77 76 74 73 76 80 84 86 88 88 87 85 85 85 85 86 86 87 90 93 95 97 98 99 100 101 104 103 97 94 93 94 92 92 90 86 82 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 9 8 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 5 13 17 16 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 1 3 6 10 16 22 26 29 31 32 34 37 42 47 52 56 58 59 58 57 55 53 51 50 50 52 56 60 65 67 67 66 66 69 74 79 83 84 82 80 80 79 78 79 81 83 86 89 93 95 96 98 99 101 104 107 105 101 96 93 90 87 82 76 73 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 2 4 7 8 7 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 4 1 0 0 0 0 0 0 0 0 4 13 19 19 13 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 1 2 4 8 14 19 25 29 32 33 33 34 37 41 47 53 58 62 62 61 58 56 54 52 51 51 51 52 54 56 56 56 58 62 67 72 76 75 74 73 72 69 66 67 70 75 80 86 90 92 94 97 100 103 108 109 106 100 95 92 86 78 71 67 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1 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 2 5 7 7 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 9 6 2 0 0 0 0 0 0 0 2 11 18 20 16 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 9 14 18 24 26 28 28 28 29 36 44 52 60 64 65 64 62 60 57 54 52 50 48 48 48 48 47 46 48 52 58 64 67 69 70 70 67 62 58 57 59 64 72 80 86 90 93 96 100 104 108 107 102 100 100 97 90 80 73 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 2 0 0 0 0 1 2 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 2 4 5 6 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 9 8 3 1 0 0 2 0 0 0 2 7 17 19 16 10 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 6 11 14 17 19 20 22 25 31 38 46 54 58 60 61 59 56 53 50 48 46 46 45 44 41 39 38 39 44 51 58 62 66 70 71 68 63 58 54 55 60 66 74 81 87 92 95 99 102 103 102 103 105 105 103 98 93 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 5 3 2 0 0 1 2 3 3 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 5 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 3 6 7 4 1 0 0 0 2 1 0 1 5 14 17 15 9 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 2 4 7 10 12 14 16 18 21 24 27 33 38 42 43 42 40 39 39 39 40 42 41 38 36 35 36 39 43 48 54 60 66 71 74 72 68 62 58 58 61 66 72 78 85 91 94 97 99 102 105 107 108 107 106 108 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 7 9 7 4 3 3 4 4 1 0 0 0 0 3 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 5 4 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 3 1 0 0 0 1 3 3 4 8 12 14 12 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 4 6 7 8 10 10 11 12 13 13 14 16 18 21 23 26 29 32 34 34 34 35 37 41 43 44 46 50 57 65 72 77 78 75 70 65 63 64 68 72 78 84 90 94 97 101 106 109 111 112 113 114 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 20 20 14 8 6 6 5 2 0 0 1 4 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 1 2 5 7 7 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 1 2 2 0 0 0 0 0 2 4 6 8 9 9 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 1 2 2 3 3 2 2 2 3 4 6 7 9 10 13 16 20 23 26 29 32 37 42 44 44 43 43 47 55 64 72 79 83 81 74 68 65 65 69 73 78 83 88 92 97 103 108 113 115 116 115 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 21 29 26 18 12 10 6 2 1 3 8 15 14 8 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 7 10 9 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 4 5 5 5 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 4 5 7 8 10 13 17 22 26 31 37 42 44 44 42 43 48 56 65 72 79 83 82 75 68 64 65 68 72 76 79 83 89 96 103 110 114 115 115 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 10 20 28 29 24 16 8 4 6 14 26 29 20 10 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 3 8 12 12 8 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 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 1 2 4 5 6 7 8 11 14 18 22 28 35 41 45 44 45 48 54 59 63 68 76 81 82 76 67 64 64 66 70 75 79 84 88 95 102 107 111 113 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 15 22 24 17 9 10 19 32 41 36 23 11 4 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 5 11 14 12 8 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 1 3 4 5 6 7 8 9 10 13 17 22 29 38 46 50 51 53 55 57 59 60 65 74 83 87 80 73 68 68 71 76 82 86 88 90 92 98 104 108 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 7 10 9 9 16 28 37 40 32 20 10 5 4 6 7 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 8 13 14 11 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 7 8 9 10 10 11 14 17 22 29 39 49 55 58 59 60 60 62 64 67 73 82 94 95 90 84 83 83 86 90 92 94 93 91 92 96 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 6 14 23 28 26 21 13 7 4 5 8 8 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 9 14 14 10 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 5 7 9 11 13 16 18 21 25 30 36 44 53 61 66 68 70 73 76 79 83 87 92 98 101 102 103 102 100 101 101 101 101 101 99 97 97 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 0 0 0 0 0 0 0 0 0 0 0 2 7 11 13 12 10 6 3 2 2 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 3 8 14 13 8 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 7 10 13 17 23 29 34 40 46 51 57 64 71 77 83 89 95 98 100 101 103 100 101 102 103 104 104 107 108 109 110 110 108 107 106 105 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 3 3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 9 13 11 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 7 11 15 20 27 34 40 46 52 59 67 75 83 90 94 95 93 90 86 83 83 83 83 85 88 94 101 107 113 113 111 110 111 112 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 10 12 9 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 1 3 4 7 11 15 18 21 25 30 38 47 56 61 62 60 57 52 49 48 49 49 49 50 52 60 71 83 94 98 96 96 100 105 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 12 11 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 2 3 4 5 6 8 10 11 12 14 15 15 15 14 15 17 20 22 23 23 24 28 32 33 45 56 60 62 67 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 1 1 1 0 0 0 0 0 1 4 8 9 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 2 1 0 0 0 0 1 2 4 6 6 6 6 9 12 16 17 16 18 21 25 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 6 3 0 0 0 0 4 8 8 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 1 2 3 3 3 3 3 5 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 10 7 2 0 0 0 3 8 8 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 3 0 0 0 1 4 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 1 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 2 5 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 6 7 6 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 7 10 10 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 8 11 10 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 23 24 24 23 23 23 22 21 19 17 14 12 11 9 8 7 6 6 5 4 4 3 3 3 3 3 2 3 3 3 3 4 4 4 4 4 4 5 5 5 6 6 6 6 6 6 6 7 7 7 8 8 8 9 9 10 10 11 11 11 12 12 12 13 13 13 13 12 12 12 12 13 13 13 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 13 13 13 13 13 12 12 12 12 12 12 12 12 13 14 14 14 14 14 14 13 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 23 23 22 22 21 19 18 16 14 13 11 10 8 7 6 5 5 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 5 5 5 6 6 6 6 6 7 7 7 8 8 8 9 9 10 10 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 13 13 13 13 13 12 12 12 12 12 12 12 12 13 14 14 13 13 13 13 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 21 21 20 20 18 17 16 14 13 11 10 8 7 6 6 5 5 5 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 5 5 5 6 6 6 6 7 7 7 8 8 8 9 9 10 10 10 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 13 13 13 13 13 13 12 12 12 12 12 12 12 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 18 17 16 15 14 12 11 nan 9 8 7 7 6 6 5 5 5 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 4 4 5 5 5 6 6 6 7 7 7 8 8 8 9 9 9 10 10 10 10 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 13 13 13 12 12 12 12 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 7 6 6 6 5 5 5 5 5 4 4 4 4 4 4 3 3 3 3 3 3 3 4 4 4 5 5 6 6 6 7 7 8 8 8 9 9 9 9 9 10 10 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 13 13 13 13 13 12 12 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 6 6 6 5 5 5 5 5 4 4 4 4 4 4 3 3 3 3 3 4 4 4 5 5 6 7 7 8 8 8 8 8 8 8 9 9 9 10 10 10 11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 13 13 13 13 12 12 12 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 5 5 4 4 4 4 3 3 3 3 3 4 4 4 5 5 6 7 8 8 8 8 8 8 8 8 8 9 9 9 10 10 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 13 13 13 13 13 13 14 14 14 14 14 14 14 14 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 4 4 4 3 3 3 3 3 3 4 4 5 5 6 7 7 8 8 8 8 8 8 8 8 8 9 9 9 10 10 10 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 13 13 13 13 14 14 14 13 13 13 13 13 13 13 13 13 13 13 13 12 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 4 4 3 3 3 3 3 4 4 5 5 6 6 7 7 7 7 7 8 7 8 8 8 8 9 9 9 10 10 10 10 10 10 10 10 11 11 11 11 11 11 12 12 12 12 12 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 12 13 13 13 12 12 12 12 12 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 4 3 3 3 3 4 4 4 4 5 5 6 6 7 7 7 7 7 7 7 8 8 8 9 9 9 9 10 10 10 10 10 10 10 10 11 11 11 11 11 11 12 12 12 12 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 4 3 3 3 4 4 4 4 5 5 6 6 7 7 7 7 7 7 7 8 8 8 8 9 9 9 9 10 10 10 10 10 10 10 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 3 4 4 4 4 4 4 5 5 6 6 6 7 7 7 7 7 8 8 8 8 8 8 9 9 9 9 9 10 10 10 10 10 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 4 4 4 4 4 4 5 5 5 6 6 7 7 7 7 7 8 8 8 8 8 8 9 9 9 9 9 10 10 10 10 10 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 12 12 12 12 12 12 12 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 4 4 4 4 4 4 4 5 5 6 6 6 7 7 7 7 7 8 8 8 8 8 9 9 9 9 10 10 10 10 10 10 10 11 10 11 11 11 11 11 11 12 11 11 12 12 12 12 12 12 12 12 13 13 13 12 12 12 12 12 12 12 12 12 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 4 4 4 4 4 4 5 5 6 6 7 7 7 7 7 7 8 8 8 9 9 9 9 9 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 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 5 5 4 4 4 4 4 4 4 5 6 6 6 7 7 7 7 7 8 8 8 8 9 9 9 9 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 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 5 5 4 4 4 4 4 4 5 6 6 6 7 7 7 7 7 8 8 8 8 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 5 5 4 4 4 4 nan nan nan nan nan nan 7 7 7 7 8 8 8 8 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 11 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 4 4 4 4 4 nan nan nan nan nan nan 7 7 7 7 8 8 8 8 8 8 8 8 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 12 12 12 12 12 11 12 12 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 4 4 4 4 4 4 4 nan nan nan nan 6 6 7 7 7 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 5 5 5 4 4 4 4 4 5 5 6 6 6 7 7 7 7 7 7 7 8 8 8 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 5 5 5 5 5 5 5 4 4 5 5 5 6 6 6 6 7 7 7 7 7 8 8 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 11 11 11 12 12 12 11 11 11 12 12 12 12 12 12 12 12 12 12 12 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 11 11 11 11 11 11 11 11 11 11 11 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 6 6 6 6 6 6 5 5 5 4 4 5 5 5 6 6 6 6 7 7 7 8 8 8 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 10 11 11 11 11 11 11 11 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 7 6 6 nan 6 6 6 6 6 5 5 5 5 5 5 5 5 5 6 6 6 7 7 8 8 8 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 11 10 11 10 10 11 11 11 11 11 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 7 nan nan nan nan 7 7 7 6 6 5 5 5 5 5 5 5 5 6 6 6 7 7 7 8 8 8 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 11 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 10 10 11 11 11 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 7 7 6 6 5 5 5 5 5 5 5 5 6 6 6 7 7 7 8 8 8 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 10 11 11 11 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 7 7 6 6 6 6 5 5 5 5 5 6 6 6 6 7 7 7 8 8 8 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 10 10 10 11 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 7 7 6 6 6 5 5 5 5 6 6 6 6 7 7 7 7 8 8 8 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 10 10 10 10 10 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 8 8 8 7 7 6 5 5 5 5 5 6 6 6 7 7 7 7 8 8 8 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 11 11 11 11 11 10 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 10 10 10 10 10 10 10 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 8 8 7 7 6 6 5 5 5 5 6 6 7 7 7 7 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 11 11 11 11 11 11 10 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 10 10 10 10 10 10 10 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 7 6 6 5 5 5 5 6 6 7 7 7 7 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 11 11 11 11 10 10 10 10 10 10 10 10 10 10 10 10 10 11 11 11 10 10 10 11 11 10 10 10 10 10 10 10 10 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 6 5 5 5 5 5 6 6 7 7 7 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 11 11 11 11 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 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 5 5 5 5 5 6 6 6 7 7 7 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 11 11 10 10 10 10 10 10 10 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 5 5 5 5 6 6 7 7 7 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 9 9 9 10 9 10 10 10 10 10 10 10 10 10 11 11 10 10 10 10 10 9 9 9 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 5 5 5 5 5 5 6 6 7 7 7 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 9 9 9 9 9 9 9 9 9 10 9 9 10 10 10 10 10 10 10 10 10 10 10 9 9 9 9 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 6 5 5 5 5 5 6 6 7 7 7 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 5 5 5 5 6 6 7 7 7 7 7 7 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 10 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 5 5 6 6 7 7 7 7 7 7 7 7 7 8 8 8 8 9 9 9 9 9 9 9 9 9 10 10 9 9 9 9 9 9 9 9 9 8 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 5 5 6 6 7 7 7 7 7 7 7 7 7 7 8 8 8 8 9 9 9 9 9 9 9 9 9 10 9 9 9 9 9 9 9 9 8 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 9 9 9 9 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 5 5 5 5 5 6 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 9 9 9 9 9 10 10 10 10 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 9 9 9 8 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 9 7 5 5 5 5 5 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 9 9 9 9 10 10 10 10 10 10 10 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 9 9 9 8 8 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 13 10 8 6 5 5 5 6 7 7 8 8 8 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 9 9 9 9 10 10 10 10 10 10 10 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 8 8 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 16 13 10 7 5 5 6 7 8 8 9 8 8 8 7 7 7 7 8 8 8 8 8 8 8 8 8 8 9 9 9 10 10 10 10 10 10 10 10 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 8 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 23 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 17 14 11 8 5 6 8 10 10 9 8 8 8 7 7 7 8 8 8 8 8 8 8 8 8 8 8 9 9 9 10 10 10 10 10 10 10 10 10 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 9 9 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 18 16 12 9 3 11 12 12 10 9 8 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 9 9 10 10 10 10 10 9 10 10 10 10 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 21 19 15 15 19 19 17 14 11 9 8 7 7 7 7 7 7 7 7 7 7 8 8 8 9 9 10 10 10 10 9 9 9 9 10 10 10 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 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 24 22 22 21 21 20 17 9 7 6 6 6 6 7 7 7 7 7 8 8 8 9 9 10 10 10 10 9 9 9 9 10 10 9 9 9 9 9 9 9 8 8 8 8 9 9 9 9 9 8 8 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 24 22 21 7 5 5 5 5 6 6 6 6 7 7 7 8 8 8 9 10 10 10 10 9 9 9 9 10 10 9 9 9 8 9 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 18 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 6 7 7 7 7 7 8 8 9 9 10 10 10 10 9 9 9 9 10 10 9 9 8 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 18 18 19 19 nan nan nan nan nan nan 19 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 7 8 8 8 8 8 8 9 10 10 10 10 10 9 9 9 10 10 10 10 9 8 8 8 8 8 8 8 8 8 7 7 7 7 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 18 18 18 19 19 nan nan nan 19 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 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 9 9 9 9 9 9 10 10 11 11 10 10 10 9 10 10 10 11 10 9 8 8 8 8 8 8 8 8 7 7 7 7 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 18 18 19 19 nan 19 19 20 20 20 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 12 11 11 11 11 11 12 12 12 11 11 10 10 9 10 10 11 11 10 9 8 8 8 8 8 8 8 8 7 7 7 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 19 nan nan 19 19 20 20 20 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 24 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 24 25 24 22 19 16 15 15 15 14 13 12 11 10 9 9 10 10 11 11 10 9 8 8 8 8 7 8 8 8 8 7 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 19 19 20 20 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 25 25 25 25 25 25 25 24 24 22 20 18 17 16 13 11 9 8 8 9 9 10 10 9 9 8 7 7 7 7 7 7 8 7 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 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 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 25 25 25 25 25 25 25 25 25 25 24 23 21 15 14 6 7 6 6 7 7 8 7 7 6 6 6 6 7 7 7 7 7 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 25 25 25 25 25 24 16 10 11 11 9 8 8 7 6 6 5 5 5 6 6 6 6 6 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 25 25 25 25 25 25 25 24 24 24 24 24 23 21 19 17 17 16 16 14 12 9 7 4 4 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 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 25 24 24 24 24 24 24 24 23 22 22 21 20 19 17 16 16 16 13 10 8 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 20 19 18 16 13 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 66 64 63 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 360 360 360 359 358 357 354 350 343 334 327 320 314 309 304 299 295 291 285 277 271 262 254 247 238 229 219 205 189 179 170 165 160 159 157 155 152 149 147 145 145 144 143 142 141 141 140 139 137 134 133 130 128 125 123 120 118 116 114 113 111 110 108 108 107 107 108 108 109 110 110 110 109 109 109 108 107 107 106 106 106 105 105 105 105 105 105 105 105 106 107 107 107 109 110 111 112 112 112 111 111 110 107 103 101 102 103 104 105 105 106 107 108 108 109 110 111 112 111 111 110 109 109 109 110 111 111 111 111 111 111 111 111 111 110 110 110 110 110 110 111 111 111 111 111 111 112 112 111 111 111 110 110 110 110 110 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 354 355 355 354 352 348 344 338 332 327 321 315 310 304 298 292 287 281 276 273 267 263 258 252 244 236 225 213 201 192 184 177 172 170 165 160 155 152 149 147 143 142 141 141 141 139 137 135 133 131 129 127 124 121 118 116 115 114 113 113 111 110 109 109 109 110 111 111 111 110 110 110 109 108 108 108 108 107 106 105 105 105 104 104 104 105 105 105 106 106 106 107 108 109 110 111 111 111 111 111 110 107 104 103 104 104 105 106 106 106 107 108 108 109 110 111 111 111 110 109 109 110 110 111 111 111 111 110 110 111 110 110 110 110 110 110 110 110 110 111 111 111 111 111 111 112 112 112 111 111 111 110 110 111 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 350 348 346 343 339 335 331 326 321 316 311 305 299 293 288 283 280 275 272 267 263 259 254 247 243 236 225 215 207 200 194 188 181 173 164 158 153 148 145 144 143 142 140 138 136 135 132 131 128 126 124 121 119 118 116 116 115 114 112 112 112 112 112 112 112 112 112 111 110 109 109 109 109 109 109 108 107 105 105 104 103 103 104 104 104 105 105 105 105 106 106 107 109 110 111 111 111 110 109 107 105 105 105 105 106 106 106 106 107 108 108 109 110 110 110 110 109 109 110 110 110 111 111 111 111 110 110 110 110 110 110 110 110 110 110 110 111 111 111 111 111 111 112 112 112 112 111 111 111 111 111 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 341 339 336 332 328 324 319 315 nan 305 301 296 292 288 285 280 277 274 271 265 263 259 257 251 245 239 232 227 220 214 205 191 179 169 159 153 149 147 144 143 141 139 137 135 132 131 128 126 124 122 121 120 118 117 116 114 114 114 114 114 114 114 114 113 111 110 110 109 109 109 109 109 109 108 106 106 105 103 103 103 103 103 103 103 103 103 103 104 105 106 107 109 110 110 110 108 107 106 105 105 105 106 106 106 106 106 107 108 109 110 110 110 110 109 110 110 110 110 111 111 111 111 110 110 110 110 110 110 110 110 110 110 110 110 110 111 111 111 111 111 111 112 112 111 111 111 111 111 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 294 291 288 286 283 279 277 272 271 267 266 262 257 255 250 247 241 237 225 213 198 183 171 163 156 151 147 144 142 141 138 134 131 128 127 126 126 126 125 123 120 119 117 116 116 115 115 115 115 115 114 113 112 111 110 110 109 109 109 110 109 108 106 106 105 103 103 103 102 102 102 102 102 102 103 103 104 106 107 108 110 110 109 108 106 105 105 105 105 106 106 106 107 107 107 108 109 109 109 109 110 110 110 110 110 111 111 111 111 111 111 111 110 110 110 110 110 110 110 110 110 110 110 110 110 110 111 111 111 111 111 111 111 111 111 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 288 286 284 282 279 278 275 272 271 266 262 260 256 253 246 238 227 211 198 183 171 162 156 151 147 143 139 134 130 128 126 127 128 128 128 128 125 123 121 120 118 117 116 115 115 115 115 115 114 113 112 111 111 110 110 110 110 109 108 107 106 104 104 103 102 102 102 102 102 103 103 103 104 104 105 107 107 109 109 108 107 107 106 105 105 106 106 106 107 107 107 108 108 108 109 109 109 110 110 110 110 111 111 111 111 111 111 111 110 110 110 109 109 109 110 110 110 110 110 110 110 110 110 110 110 111 111 111 111 111 111 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 278 275 272 268 266 260 256 249 240 231 218 205 190 179 168 160 154 147 141 135 130 128 126 127 129 131 131 131 130 128 126 124 121 120 118 117 116 116 116 116 116 115 115 114 113 112 112 111 111 110 109 108 107 106 105 104 103 102 102 102 103 104 104 104 104 104 104 105 106 108 108 108 108 108 107 106 106 106 107 107 107 107 107 107 107 108 108 109 109 110 110 110 110 110 111 111 111 111 111 111 111 110 110 109 109 109 109 109 109 110 110 110 110 110 110 109 109 110 110 111 111 111 112 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 271 266 261 254 247 238 231 220 207 194 183 173 164 154 146 139 134 130 129 129 130 131 132 133 132 131 130 129 126 124 121 119 118 117 117 117 117 117 117 116 115 115 114 113 113 112 111 110 109 108 107 106 105 104 103 103 104 104 104 104 104 104 104 104 105 106 107 108 108 108 107 107 107 107 107 108 108 108 107 106 106 106 107 108 109 110 110 110 110 110 110 110 111 111 111 111 110 110 110 109 109 109 109 109 109 109 109 109 109 109 109 109 109 110 110 110 111 111 111 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 245 237 228 219 206 196 183 175 167 157 150 143 137 134 133 132 133 133 134 134 134 134 132 131 128 125 123 121 119 119 119 118 119 119 119 118 118 116 116 115 114 113 112 111 110 109 108 107 105 105 105 106 106 105 105 104 104 104 103 103 105 105 107 108 108 108 107 107 108 108 108 108 108 107 107 106 106 107 108 109 110 110 110 110 110 110 110 110 110 110 110 110 110 110 109 109 109 109 109 109 109 109 109 109 109 109 109 109 109 109 110 110 111 111 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 235 226 216 205 194 187 181 172 164 155 148 142 138 136 134 133 134 135 135 136 135 133 131 129 126 124 123 122 121 120 119 119 119 119 119 118 118 117 116 115 114 113 112 111 110 108 107 107 107 107 107 107 105 105 104 103 103 103 103 104 106 107 108 108 108 108 107 107 107 108 108 108 107 106 105 106 107 108 109 110 111 110 110 110 110 110 110 109 109 109 109 109 109 109 110 110 109 109 109 109 109 109 109 109 109 109 109 109 109 110 110 111 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 224 215 205 198 193 187 179 169 160 152 145 141 137 135 134 135 135 135 134 134 132 131 128 127 126 125 124 122 121 121 120 119 119 119 118 118 117 116 115 114 113 112 111 110 109 108 108 108 108 108 107 105 104 103 103 102 103 103 104 106 107 108 109 108 108 107 107 107 106 106 106 106 106 106 106 108 108 110 111 110 110 110 110 109 109 108 108 108 108 108 109 109 109 110 110 109 109 109 109 109 109 108 108 108 108 108 109 109 109 110 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 219 212 206 199 191 181 171 162 153 148 144 139 137 135 135 134 134 134 132 131 130 129 128 127 126 125 124 123 121 121 120 119 119 118 117 117 116 116 115 113 112 111 110 110 110 110 110 110 108 107 106 105 103 102 102 103 104 105 107 108 108 108 108 107 106 105 104 104 104 105 105 105 106 107 108 109 110 110 110 110 110 109 109 108 108 108 107 108 108 109 109 109 110 110 109 109 109 109 109 108 108 108 108 108 108 108 109 109 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 224 216 205 195 183 172 163 156 150 146 141 138 136 136 134 134 134 132 132 131 130 129 127 127 125 124 123 121 120 119 119 118 118 118 117 116 115 114 112 111 111 111 111 111 111 111 110 108 108 106 105 104 103 103 103 103 105 106 108 108 108 108 106 104 103 102 102 103 104 104 105 107 108 109 110 110 110 110 110 109 108 108 108 107 107 107 108 108 109 109 109 109 109 109 109 109 108 108 108 107 108 108 108 108 108 108 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 237 227 217 203 191 179 169 161 153 147 143 140 137 136 135 134 134 133 132 131 130 128 127 126 125 124 122 120 119 118 118 118 118 118 117 117 116 114 112 112 112 112 112 112 112 111 110 109 108 107 106 105 104 103 104 105 106 107 108 107 107 105 105 103 102 102 102 102 103 104 106 107 109 110 110 110 110 109 109 108 108 108 107 106 106 107 107 107 108 109 109 109 109 109 109 108 108 107 107 108 108 108 108 108 108 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 250 241 229 214 200 187 176 166 158 151 147 142 139 137 136 136 135 134 134 132 130 129 127 126 125 124 122 120 118 118 118 118 119 119 118 117 116 115 114 114 114 114 114 113 112 112 111 110 108 107 106 105 105 104 105 106 106 106 106 106 105 104 104 102 102 101 101 102 103 104 107 108 109 110 109 110 109 109 109 108 108 107 106 106 106 106 106 107 108 108 108 108 108 108 108 108 107 107 107 107 108 108 108 108 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 257 248 236 222 209 200 188 177 166 157 150 143 140 139 137 136 136 135 134 132 130 128 127 126 125 124 122 120 118 118 118 119 119 119 118 117 116 116 116 116 116 115 115 114 113 111 111 110 109 108 107 106 106 106 106 106 106 106 105 104 104 103 103 102 101 100 100 102 104 105 107 108 109 109 110 110 110 109 109 108 107 107 106 106 106 107 107 107 108 108 108 108 108 108 108 108 107 107 107 107 108 108 108 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 254 244 232 222 210 198 184 171 158 151 145 141 140 138 137 136 135 133 132 130 128 127 126 125 124 123 121 120 119 119 119 119 119 118 118 118 118 118 118 117 116 115 113 113 112 111 110 109 108 107 107 107 107 106 106 105 104 104 103 103 103 102 101 100 100 101 102 104 106 107 109 110 110 110 110 110 109 108 108 107 107 107 107 107 107 108 108 108 108 108 108 108 108 108 107 107 107 107 107 108 108 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 259 251 240 229 213 199 184 nan nan nan nan nan nan 140 139 137 135 133 132 130 129 127 127 126 126 125 124 123 122 121 120 120 120 119 119 119 120 120 119 118 116 115 113 112 112 111 110 109 109 108 108 107 107 106 105 105 104 103 102 101 101 101 100 100 101 102 103 105 107 108 110 110 111 111 110 110 109 108 108 108 108 108 108 108 109 109 108 108 108 108 108 108 108 107 107 107 107 107 108 108 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 254 242 227 212 199 188 181 nan nan nan nan nan nan 143 139 136 134 132 131 130 130 130 130 130 130 129 127 124 123 122 121 121 120 120 121 121 121 119 118 116 114 113 113 112 111 110 110 109 108 108 107 106 106 106 105 103 103 102 101 101 101 101 101 102 103 105 106 108 109 109 110 111 111 111 110 109 109 109 109 109 110 110 110 110 109 109 108 108 109 109 109 108 108 107 107 108 108 108 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 241 231 219 212 205 198 193 184 nan nan nan nan 151 146 141 137 135 134 134 133 133 134 135 134 132 129 126 124 123 123 122 122 122 122 122 121 120 118 116 115 114 113 113 111 110 110 109 108 107 107 107 107 106 105 104 103 102 102 102 102 102 103 103 104 106 107 109 109 110 110 111 111 111 111 111 110 109 109 110 110 111 110 110 109 110 109 110 110 110 110 109 108 108 108 108 108 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 240 235 229 225 220 217 211 206 199 191 179 166 157 149 145 143 141 140 139 140 140 139 138 134 130 127 126 124 124 124 123 123 123 122 121 119 117 116 115 115 114 113 112 110 108 107 107 107 107 107 107 106 105 104 104 103 103 103 103 104 104 105 106 107 108 108 109 110 110 111 111 111 111 111 110 109 110 111 111 111 112 111 110 110 110 110 110 110 110 109 108 108 108 108 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 249 246 242 240 238 237 234 229 223 215 201 185 172 162 156 153 151 149 147 146 145 142 138 134 130 127 125 125 125 124 124 123 122 121 120 118 117 116 116 115 114 113 111 109 108 107 107 107 108 108 107 106 104 104 104 104 104 104 104 105 105 106 107 108 109 109 109 109 111 111 111 110 110 109 109 109 111 111 112 112 112 111 110 110 110 109 109 108 108 108 108 108 108 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 253 253 252 251 249 246 243 238 229 218 203 189 178 171 165 162 159 156 153 148 144 139 134 131 128 125 125 125 124 123 122 120 120 119 119 117 117 116 115 114 113 111 110 109 108 108 109 108 108 107 105 105 105 105 105 106 106 106 106 107 108 108 109 109 110 110 110 110 110 109 109 109 109 108 109 110 111 112 112 112 111 110 110 110 110 109 108 107 106 106 106 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 261 259 259 nan 257 256 254 252 248 239 229 216 205 193 185 179 174 170 164 159 151 145 139 136 132 130 127 125 124 123 122 120 120 120 119 119 119 118 116 115 114 113 112 111 111 110 110 110 109 108 107 106 106 106 106 106 106 107 107 108 109 110 110 110 110 110 111 111 110 110 109 108 107 107 107 108 109 110 112 112 111 111 110 110 111 110 109 108 107 106 106 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 264 nan nan nan nan 261 261 259 255 248 239 228 218 208 200 192 185 178 170 162 154 147 143 139 136 132 128 126 125 123 122 121 121 121 121 121 120 118 117 115 115 114 114 113 112 112 111 110 109 109 108 108 107 107 107 107 108 108 109 110 111 111 112 112 111 110 110 110 109 108 107 106 106 106 107 107 108 109 110 110 110 110 111 112 111 110 108 108 107 106 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 267 267 266 261 255 247 237 228 220 212 203 195 185 175 165 157 150 146 143 139 135 131 128 126 124 124 123 123 123 123 122 121 119 118 116 115 115 114 113 113 112 111 110 110 110 109 109 108 108 108 108 109 110 111 112 112 112 112 112 111 110 110 109 108 108 107 106 105 105 106 107 107 108 108 109 110 111 112 112 110 109 109 108 108 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 271 270 266 260 253 245 238 232 224 214 203 190 179 168 160 153 149 146 141 138 134 131 128 125 125 124 124 124 124 123 122 120 118 117 116 115 115 114 113 112 112 111 110 110 110 109 108 108 108 110 111 112 112 113 113 114 113 112 111 110 108 107 107 106 105 104 104 105 106 106 106 106 107 109 111 112 112 110 110 110 110 109 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 269 265 260 255 249 243 234 222 209 195 182 172 162 155 150 146 143 139 136 132 129 127 125 123 123 123 123 122 121 120 119 118 117 116 115 114 113 112 112 111 111 111 110 110 109 109 110 111 112 112 113 114 114 113 113 112 111 108 107 106 105 105 104 104 105 105 104 104 105 106 108 110 112 112 112 110 110 110 110 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 272 270 266 262 256 248 239 227 213 200 185 173 163 154 149 145 142 139 136 132 129 126 124 124 123 123 122 121 121 120 119 119 118 116 115 114 113 112 111 110 110 110 109 109 108 109 110 112 112 113 113 113 113 113 113 112 110 108 106 105 105 105 105 105 105 105 104 105 106 108 110 112 112 112 111 110 110 110 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 272 269 264 258 249 239 229 214 199 186 173 161 152 145 142 139 136 134 130 128 125 124 123 123 121 120 120 120 120 118 118 117 117 115 114 113 112 110 110 109 108 108 108 108 109 111 112 114 114 113 113 113 113 113 111 110 108 106 105 105 106 106 106 105 104 104 105 108 110 112 112 111 111 110 110 110 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 261 254 247 236 224 210 195 181 166 156 147 141 137 135 133 131 129 126 125 124 122 120 119 119 119 119 119 118 118 117 116 115 114 113 112 110 109 108 107 107 107 107 108 111 113 114 114 113 113 114 113 113 111 110 109 107 106 106 107 106 106 104 104 105 107 109 111 111 111 111 110 109 109 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 248 238 227 213 198 184 170 159 150 143 139 134 132 130 129 127 125 124 123 121 120 119 119 118 118 118 118 118 117 116 115 114 113 112 111 109 108 107 107 106 107 109 112 114 114 114 114 114 114 113 113 112 110 109 108 107 107 107 107 105 104 105 106 108 109 110 111 110 110 110 110 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 225 212 198 185 172 164 155 149 143 137 133 130 128 127 126 125 123 122 121 120 120 118 117 117 117 117 117 117 117 116 114 113 112 111 110 109 108 107 107 109 111 113 114 115 115 114 114 113 113 112 111 110 109 108 108 107 106 105 104 105 106 107 108 109 110 110 110 110 110 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 216 204 192 181 171 163 155 148 141 135 132 128 127 126 125 124 122 122 122 120 119 119 117 117 116 116 116 116 116 116 115 114 113 112 111 111 109 109 109 111 112 113 115 115 115 115 114 114 113 112 111 110 109 108 108 106 105 105 105 105 106 107 109 110 111 111 111 111 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 220 208 197 188 176 166 157 147 139 134 132 130 128 127 125 125 124 124 122 121 120 118 117 116 115 115 115 115 115 115 114 114 114 114 113 113 112 112 113 113 114 115 116 116 116 116 115 113 112 112 111 110 109 109 107 106 106 106 106 106 107 109 110 112 112 112 112 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 231 220 210 197 182 168 157 146 139 135 132 131 130 129 127 127 126 125 123 122 120 118 116 115 114 114 114 115 114 114 113 113 113 114 114 114 114 114 115 116 117 118 118 118 118 116 114 113 113 113 112 110 110 108 107 106 106 106 106 107 108 110 112 113 114 114 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 231 219 203 187 170 155 145 139 135 134 134 133 132 131 130 128 126 125 123 121 118 116 115 113 114 115 115 114 112 112 112 113 114 115 115 115 116 116 118 119 120 119 118 117 115 115 115 115 114 112 111 109 108 107 106 106 107 107 108 109 111 114 115 116 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 223 206 186 168 155 146 139 136 135 136 136 136 135 134 132 130 127 125 121 119 116 115 115 115 116 115 114 112 110 111 112 113 114 115 115 116 117 118 119 120 119 117 115 116 116 116 115 114 112 110 108 107 107 107 107 108 108 109 112 115 116 118 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 220 202 184 167 154 144 139 136 136 137 138 139 139 139 136 134 131 127 124 121 119 118 118 118 118 115 114 111 110 109 110 112 112 113 114 115 117 118 119 118 116 115 115 115 116 116 116 114 111 109 108 107 107 107 108 109 111 113 115 118 120 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 347 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 222 212 196 179 163 150 141 136 134 134 136 139 142 143 141 139 136 132 129 126 124 122 121 121 119 118 115 113 111 108 108 108 109 110 111 112 114 116 117 117 116 115 115 115 116 116 116 115 113 110 108 107 107 108 108 110 112 115 116 118 121 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 347 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 272 251 226 208 197 187 171 154 141 134 130 130 132 134 138 141 141 139 136 132 129 129 128 125 124 123 121 119 117 114 112 109 108 107 107 107 107 108 110 113 116 116 115 115 115 115 115 116 116 116 115 112 109 107 108 108 109 110 112 115 117 119 121 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 343 344 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 300 286 262 234 208 187 168 153 138 130 125 124 125 128 132 135 137 135 132 127 125 124 125 124 124 124 122 121 119 117 114 111 108 107 106 105 106 106 107 110 113 115 116 115 115 115 116 116 116 116 115 113 110 108 108 108 108 108 110 113 117 119 121 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 343 344 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 311 301 287 266 231 185 151 131 121 118 118 119 122 126 130 132 132 129 125 121 121 121 122 122 122 122 121 120 118 116 112 109 107 106 105 105 105 105 107 109 112 115 116 117 117 116 116 116 115 114 113 110 108 107 107 107 107 108 110 113 117 120 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 344 345 346 346 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 314 307 297 278 216 141 117 108 108 111 117 122 126 129 131 129 126 123 122 121 122 122 122 122 121 119 119 116 113 110 107 105 105 105 105 105 105 105 108 111 115 116 117 117 116 115 115 114 113 111 108 107 106 106 106 106 107 109 113 117 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 344 346 347 347 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 321 316 312 305 80 99 93 95 104 112 119 125 129 131 129 127 125 125 125 125 126 124 122 120 118 117 114 110 106 104 104 105 106 107 106 105 106 108 111 115 116 116 116 115 115 114 114 112 110 108 107 108 108 108 108 109 111 115 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 347 348 349 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 331 327 343 14 36 55 64 77 93 111 117 127 131 131 131 130 131 131 131 130 129 124 122 120 116 111 106 103 103 104 107 108 108 107 105 106 108 111 114 115 115 115 115 115 115 113 112 111 110 110 110 110 111 112 113 116 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 347 349 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 7 17 20 22 23 31 68 101 122 134 134 135 135 136 136 137 134 130 126 123 120 116 110 103 101 102 105 108 110 109 108 106 106 107 110 114 115 114 113 114 115 115 115 115 114 114 113 113 113 115 116 118 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 349 350 351 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 7 9 3 4 164 146 152 147 145 142 140 138 134 130 127 124 121 115 108 102 99 101 105 108 110 109 108 106 105 107 111 114 116 116 114 115 116 118 118 119 118 118 117 117 118 119 120 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 349 352 354 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 159 145 136 132 129 127 125 124 120 113 107 102 100 102 105 108 109 108 107 105 104 107 110 115 119 118 117 117 118 120 122 122 121 121 121 121 122 122 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 347 348 351 353 355 nan nan nan nan nan nan 352 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 127 122 121 122 122 121 117 111 105 100 99 101 104 107 108 108 105 102 101 104 110 117 121 121 120 120 120 121 123 124 124 124 124 124 124 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 348 348 350 352 354 nan nan nan 352 352 352 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 349 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 96 106 110 112 112 109 105 100 97 97 99 102 105 108 106 102 99 98 100 107 115 121 123 122 122 122 123 124 124 125 126 126 127 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 348 349 351 352 nan 352 352 352 352 352 352 351 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 348 349 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 69 69 73 79 87 90 91 90 91 93 96 101 106 107 104 99 96 94 97 105 113 120 124 124 123 123 122 122 124 125 127 127 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 350 nan nan 351 351 351 351 352 351 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 349 350 351 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 360 4 15 29 40 49 53 59 67 74 80 87 95 103 108 109 105 100 95 94 98 105 113 121 123 124 124 124 122 122 123 125 126 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 350 350 351 351 351 351 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 350 351 351 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 351 352 354 357 360 2 6 11 17 27 35 40 45 57 79 97 110 117 116 112 105 102 101 105 111 119 123 127 127 128 126 124 123 122 123 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 349 350 351 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 350 351 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 351 353 354 356 358 360 1 3 4 6 9 14 20 25 21 52 134 143 140 131 124 120 120 126 135 139 140 137 134 134 131 127 125 123 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 351 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 352 353 354 356 357 358 358 358 357 356 354 352 352 355 355 348 331 309 289 273 258 243 228 221 210 190 168 151 148 146 143 139 134 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 354 355 356 356 356 355 353 351 350 349 349 348 345 338 329 321 316 311 306 300 291 277 262 244 226 213 199 188 177 167 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 351 353 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 351 350 350 350 349 347 344 340 336 331 326 320 315 308 302 297 294 292 280 264 247 231 217 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 313 313 310 304 293 279 263 249 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 354 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 355 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 -24 -20 -17 -15 -14 -14 -13 -11 -10 -11 -14 -18 -21 -22 -21 -20 -18 -15 -12 -10 -11 -14 -17 -19 -23 -26 -30 -34 -38 -39 -39 -38 -37 -38 -39 -40 -42 -45 -49 -53 -56 -59 -60 -59 -57 -56 -56 -59 -60 -59 -58 -56 -55 -54 -53 -51 -48 -42 -37 -42 -52 -63 -73 -78 -78 -79 -78 -77 -74 -68 -63 -64 -67 -69 -69 -66 -60 -56 -54 -56 -58 -59 -57 -54 -53 -54 -55 -55 -53 -48 -42 -39 -41 -44 -44 -39 -30 -23 -20 -20 -22 -23 -22 -20 -17 -16 -16 -16 -16 -14 -12 -10 -9 -8 -7 -8 -10 -13 -15 -14 -11 -7 -5 -5 -6 -7 -6 -5 -4 -3 -2 -2 -3 -4 -6 -6 -5 -3 -2 -2 -3 -5 -6 -7 -6 -3 -2 -2 -5 -9 -12 -12 -9 -5 -3 -3 -5 -7 -9 -8 -7 -6 -7 -8 -9 -9 -8 -8 -9 -9 -8 -8 -8 -8 -10 -10 -9 -7 -5 -4 -3 -4 -6 -8 -8 -8 -6 -5 -6 -8 -9 -9 -7 -5 -4 -4 -5 -6 -7 -8 -8 -7 -7 -7 -7 -7 -8 -9 -9 -10 -10 -9 -9 -9 -9 -10 -10 -11 -11 -12 -12 -12 -12 -12 -13 -13 -13 -14 -15 -16 -16 -17 -18 -19 -20 -21 -21 -22 -23 -24 -26 -28 -30 -31 -32 -33 -33 -34 -35 -35 -35 -36 -36 -36 -36 -36 -37 -38 -39 -40 -41 -42 -44 -45 -44 -41 -36 -31 -26 -21 -18 -15 -12 -10 -7 -4 -1 1 4 6 8 10 11 13 15 17 19 20 21 22 22 22 23 24 24 24 25 25 26 27 27 27 27 26 25 24 24 24 26 28 30 31 32 33 34 35 36 36 35 35 35 35 35 35 34 33 33 32 31 30 29 28 29 29 30 30 30 28 27 27 27 26 25 24 22 20 18 16 16 17 19 19 19 19 21 23 22 19 17 17 19 22 25 26 28 30 32 32 32 31 30 30 31 32 32 31 29 27 26 27 27 28 29 29 29 29 29 29 29 30 30 30 29 29 29 28 28 27 27 26 26 26 27 27 27 27 28 28 27 27 26 26 -23 -20 -16 -13 -12 -12 -12 -12 -12 -13 -15 -17 -20 -21 -21 -20 -19 -17 -14 -13 -14 -16 -19 -21 -23 -26 -30 -36 -40 -40 -40 -39 -39 -41 -41 -42 -45 -48 -52 -55 -60 -62 -63 -62 -59 -57 -56 -59 -60 -59 -58 -57 -56 -56 -56 -56 -54 -51 -50 -54 -62 -70 -77 -79 -80 -81 -80 -76 -72 -67 -66 -68 -70 -70 -67 -62 -59 -58 -58 -59 -59 -57 -53 -50 -50 -52 -53 -53 -50 -44 -39 -37 -41 -45 -44 -35 -25 -19 -19 -20 -21 -19 -17 -15 -15 -16 -18 -18 -16 -13 -11 -10 -10 -9 -9 -10 -13 -15 -14 -11 -7 -5 -5 -6 -7 -7 -7 -6 -5 -3 -2 -3 -5 -6 -7 -5 -2 -0 -1 -3 -5 -7 -8 -6 -3 -2 -2 -4 -8 -11 -11 -8 -6 -4 -5 -7 -8 -9 -8 -6 -5 -5 -6 -8 -8 -8 -8 -8 -8 -7 -6 -6 -7 -9 -11 -10 -8 -5 -4 -3 -4 -5 -7 -8 -6 -5 -4 -5 -8 -10 -9 -8 -6 -4 -4 -5 -6 -6 -7 -8 -7 -6 -6 -5 -6 -7 -8 -9 -10 -10 -9 -9 -9 -9 -10 -10 -11 -11 -11 -11 -11 -11 -11 -12 -12 -12 -12 -13 -14 -14 -15 -16 -17 -18 -19 -19 -20 -20 -21 -22 -23 -25 -27 -29 -30 -31 -32 -33 -34 -34 -34 -35 -35 -35 -36 -36 -37 -38 -39 -40 -41 -42 -43 -44 -44 -43 -39 -36 -32 -27 -23 -19 -15 -11 -8 -6 -4 -2 0 2 4 6 8 9 11 13 14 16 17 18 19 19 20 21 22 23 24 26 27 28 28 29 28 28 27 26 25 26 27 28 29 30 32 33 34 34 34 34 34 34 35 36 37 38 38 37 37 36 35 34 32 31 31 30 30 29 29 28 27 28 28 29 27 25 22 20 18 17 18 20 20 20 19 20 21 23 23 21 17 13 14 18 22 25 27 29 31 32 32 32 32 31 32 32 32 31 29 27 27 27 28 28 29 29 30 30 30 30 30 31 31 31 31 31 30 30 29 28 28 27 27 27 27 27 27 27 27 28 27 27 27 26 -23 -19 -16 -12 -10 -11 -12 -12 -13 -14 -15 -16 -18 -19 -20 -20 -20 -17 -15 -15 -17 -19 -22 -24 -25 -28 -31 -36 -41 -41 -41 -41 -42 -44 -45 -46 -48 -51 -55 -59 -64 -66 -66 -65 -61 -58 -57 -59 -60 -59 -58 -56 -55 -57 -59 -60 -60 -60 -61 -64 -70 -76 -80 -81 -82 -82 -80 -75 -72 -70 -71 -72 -71 -68 -65 -62 -61 -60 -60 -59 -57 -54 -51 -51 -51 -52 -51 -49 -45 -40 -36 -37 -41 -44 -40 -31 -22 -18 -19 -20 -18 -15 -13 -14 -16 -18 -18 -17 -14 -13 -12 -13 -12 -11 -11 -13 -14 -14 -10 -7 -5 -5 -6 -7 -8 -8 -8 -7 -4 -3 -3 -6 -7 -7 -4 -0 1 -0 -2 -5 -8 -8 -6 -3 -2 -2 -5 -8 -9 -9 -7 -5 -5 -6 -8 -10 -10 -8 -5 -3 -3 -5 -6 -7 -8 -8 -8 -8 -7 -6 -5 -6 -8 -10 -10 -8 -6 -4 -4 -4 -6 -7 -7 -5 -4 -3 -5 -7 -10 -10 -8 -6 -5 -5 -6 -6 -7 -7 -8 -8 -7 -6 -5 -6 -6 -8 -9 -9 -9 -9 -8 -9 -9 -10 -11 -12 -12 -12 -12 -12 -11 -11 -11 -11 -11 -11 -12 -12 -13 -13 -13 -13 -14 -15 -16 -17 -17 -18 -19 -20 -21 -22 -24 -25 -27 -29 -30 -31 -32 -32 -32 -33 -33 -34 -34 -35 -37 -38 -39 -40 -41 -41 -42 -43 -43 -42 -41 -39 -36 -33 -29 -25 -20 -16 -12 -9 -7 -5 -3 -1 1 3 4 6 7 9 10 11 12 14 15 15 16 17 18 20 21 23 25 27 29 30 30 29 29 28 28 28 28 28 29 29 31 32 33 33 33 32 32 33 34 35 37 38 38 39 39 39 39 38 36 35 34 32 31 29 28 27 27 28 28 29 27 25 22 21 21 21 23 23 23 22 21 21 21 22 23 22 20 15 14 18 21 24 26 28 29 30 31 32 32 32 33 33 32 30 28 26 26 27 27 28 28 29 30 30 31 31 31 31 31 32 32 32 32 31 31 30 29 29 28 28 27 27 27 27 27 27 27 27 27 27 -22 -19 -15 -11 -9 -10 -12 -12 -13 -14 -15 -17 -18 -19 -20 -20 -19 -17 -16 -17 -19 -22 -24 -26 -28 -30 -33 -36 -41 -42 -43 -44 -45 -48 -49 -50 -52 -55 -59 -63 -68 -70 -69 -67 -63 -61 -60 -61 -61 -60 -58 -56 -55 -57 -60 -63 -65 -67 -68 -71 -75 -79 -82 -83 -84 -81 -76 -74 -75 -75 -74 -73 -70 -68 -66 -64 -62 -60 -59 -56 -54 -53 -53 -53 -52 -51 -49 -45 -41 -38 -36 -37 -40 -40 -34 -27 -22 -19 -19 -17 -14 -13 -15 -17 -18 -18 -15 -13 -13 -15 -17 -16 -14 -12 -13 -14 -13 -10 -7 -5 -5 -7 -8 -9 -10 -10 -8 -6 -4 -4 -6 -8 -7 -4 -0 1 -0 -3 -6 -8 -8 -6 -3 -2 -3 -5 -8 -9 -7 -5 -4 -5 -7 -9 -11 -10 -8 -5 -2 -2 -4 -6 -7 -7 -6 -6 -7 -6 -6 -5 -6 -7 -9 -9 -8 -6 -5 -5 -5 -6 -7 -6 -5 -3 -3 -5 -8 -10 -10 -8 -6 -6 -6 -7 -8 -8 -8 -8 -8 -8 -7 -6 -6 -7 -8 -9 -9 -9 -8 -8 -8 -9 -10 -11 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -10 -11 -11 -12 -12 -12 -11 -11 -12 -12 -13 -14 -14 -15 -16 -17 -18 -19 -21 -22 -24 -26 -27 -28 -29 -30 -31 -31 -32 -33 -33 -34 -35 -37 -38 -39 -40 -41 -41 -42 -42 -41 -40 -39 -37 -34 -32 -29 -25 -22 -18 -15 -12 -9 -7 -5 -3 -1 1 2 3 4 6 7 8 9 10 11 12 13 14 15 17 19 21 24 26 28 30 30 30 30 30 29 29 28 28 29 30 31 32 32 32 32 33 33 34 35 35 36 37 38 39 40 41 40 40 38 37 35 33 31 29 28 28 28 28 27 26 24 24 25 26 27 27 27 26 25 25 24 24 23 23 22 21 19 19 21 23 25 27 27 28 29 30 31 31 32 32 32 31 29 27 26 26 27 27 28 28 29 29 30 30 31 31 32 32 32 32 33 33 32 32 31 30 29 29 28 28 28 28 28 27 27 27 27 27 27 -22 -18 -13 -9 -8 -10 -12 -12 -13 -13 -15 -18 -19 -19 -20 -20 -19 -17 -16 -18 -21 -24 -26 -29 -32 -34 -35 -37 -41 -44 -46 -47 -48 -51 -53 -54 -56 -59 -63 -67 -71 -72 -71 -68 -66 -65 -66 -65 -64 -61 -59 -57 -56 -58 -62 -65 -67 -69 -71 -75 -78 -81 -82 -83 -81 -75 -74 -76 -78 -78 -75 -73 -71 -69 -67 -63 -60 -58 -57 -56 -55 -54 -53 -52 -52 -51 -48 -43 -39 -35 -35 -37 -38 -35 -28 -23 -20 -19 -18 -15 -15 -17 -18 -18 -16 -13 -12 -13 -16 -19 -19 -16 -13 -13 -14 -13 -10 -6 -5 -6 -8 -10 -11 -12 -12 -9 -7 -4 -5 -7 -9 -8 -5 -2 -0 -2 -5 -8 -9 -9 -6 -3 -2 -3 -6 -8 -9 -6 -4 -3 -4 -7 -10 -11 -10 -7 -4 -3 -3 -5 -6 -7 -6 -6 -5 -5 -5 -5 -6 -6 -7 -8 -8 -7 -6 -5 -5 -5 -6 -6 -6 -4 -3 -4 -6 -8 -9 -9 -6 -5 -5 -7 -9 -10 -9 -8 -8 -8 -7 -7 -6 -6 -6 -8 -8 -9 -8 -7 -7 -7 -8 -10 -11 -11 -10 -9 -9 -9 -9 -10 -10 -11 -10 -10 -9 -10 -11 -11 -11 -11 -10 -10 -10 -10 -10 -11 -12 -13 -13 -14 -15 -16 -17 -19 -20 -22 -24 -25 -26 -27 -29 -30 -31 -32 -33 -33 -34 -35 -36 -38 -39 -40 -40 -40 -40 -40 -39 -38 -36 -34 -32 -30 -28 -25 -22 -19 -16 -13 -11 -9 -7 -5 -3 -2 -1 0 2 3 4 5 6 7 8 9 10 11 13 14 17 19 22 25 27 29 30 30 30 30 30 30 30 30 30 30 30 30 31 32 34 35 35 35 35 35 35 36 38 39 41 41 41 41 39 37 35 34 32 31 30 29 28 27 26 26 27 29 31 31 30 28 28 28 28 28 27 25 23 22 21 21 22 24 26 27 28 28 28 29 29 30 31 31 32 31 30 29 28 27 27 27 27 27 27 28 28 29 29 30 31 32 32 32 32 33 33 32 32 32 31 30 29 29 28 28 28 28 28 27 27 27 27 27 -20 -16 -11 -8 -8 -10 -12 -12 -12 -13 -15 -19 -21 -21 -21 -21 -19 -17 -17 -20 -23 -26 -29 -32 -36 -39 -40 -40 -42 -46 -48 -50 -51 -54 -57 -58 -60 -63 -67 -71 -74 -74 -72 -71 -71 -72 -72 -71 -68 -65 -62 -60 -58 -60 -63 -65 -68 -70 -74 -78 -80 -82 -82 -81 -78 -75 -76 -78 -78 -76 -73 -73 -72 -70 -66 -62 -58 -58 -57 -56 -55 -53 -52 -52 -51 -50 -48 -44 -40 -35 -35 -35 -35 -33 -28 -22 -20 -18 -17 -17 -18 -19 -18 -16 -13 -12 -13 -17 -19 -19 -17 -13 -13 -13 -11 -9 -7 -7 -8 -11 -12 -13 -13 -12 -10 -7 -6 -6 -8 -10 -9 -7 -4 -3 -5 -9 -11 -11 -9 -6 -3 -2 -3 -6 -9 -9 -6 -2 -2 -4 -7 -10 -11 -9 -5 -3 -2 -3 -6 -8 -8 -6 -5 -4 -4 -4 -4 -5 -6 -7 -7 -7 -6 -5 -5 -5 -5 -6 -6 -5 -4 -3 -4 -6 -8 -8 -7 -5 -4 -5 -8 -10 -10 -9 -8 -7 -6 -5 -5 -4 -5 -6 -7 -8 -7 -7 -6 -6 -6 -8 -9 -10 -10 -9 -7 -6 -6 -6 -7 -7 -8 -9 -8 -8 -8 -9 -9 -10 -9 -9 -9 -9 -8 -8 -8 -8 -9 -10 -11 -11 -12 -13 -14 -15 -17 -18 -20 -21 -23 -24 -26 -27 -29 -31 -31 -32 -33 -33 -34 -36 -37 -38 -39 -39 -39 -38 -38 -36 -34 -32 -31 -30 -29 -27 -25 -22 -19 -16 -14 -11 -10 -8 -6 -5 -4 -3 -2 -1 -0 1 2 3 4 5 6 7 9 11 13 15 17 20 22 25 27 28 29 30 31 32 33 33 32 31 30 29 30 32 33 35 36 36 35 35 35 35 36 38 39 40 41 41 40 38 37 36 36 34 33 31 29 28 28 30 32 34 33 31 29 28 29 30 30 30 28 26 24 22 22 23 25 28 30 31 30 29 29 29 30 30 30 31 31 31 30 30 29 29 28 28 27 27 27 27 28 28 29 30 31 32 32 32 32 32 32 32 32 31 31 30 29 29 28 28 28 28 28 27 27 27 27 28 -17 -13 -10 -7 -8 -10 -11 -11 -12 -13 -16 -20 -23 -24 -24 -23 -20 -18 -18 -21 -24 -27 -31 -36 -40 -43 -45 -45 -45 -47 -49 -52 -54 -56 -60 -62 -64 -67 -71 -73 -75 -75 -74 -75 -76 -77 -77 -75 -73 -69 -66 -63 -61 -62 -64 -67 -70 -73 -77 -79 -81 -83 -82 -81 -78 -77 -78 -76 -73 -70 -70 -72 -72 -69 -65 -61 -59 -58 -58 -57 -55 -53 -52 -51 -51 -50 -48 -45 -41 -36 -34 -34 -34 -33 -29 -23 -19 -18 -18 -19 -19 -18 -16 -14 -13 -14 -17 -19 -18 -16 -13 -11 -11 -10 -8 -8 -8 -10 -13 -14 -14 -13 -11 -10 -8 -8 -9 -10 -11 -10 -8 -7 -7 -9 -12 -13 -12 -9 -6 -3 -3 -5 -7 -9 -8 -5 -2 -1 -3 -7 -10 -10 -7 -3 -1 -1 -4 -7 -9 -8 -6 -4 -3 -3 -3 -4 -4 -5 -6 -6 -6 -5 -4 -4 -5 -5 -6 -5 -4 -3 -3 -3 -5 -7 -7 -6 -4 -3 -5 -7 -9 -9 -8 -6 -5 -5 -4 -3 -3 -3 -5 -6 -7 -6 -5 -4 -5 -6 -7 -8 -9 -8 -7 -6 -4 -4 -4 -4 -5 -6 -6 -7 -7 -7 -8 -8 -8 -8 -8 -8 -8 -7 -7 -7 -7 -7 -7 -8 -8 -9 -10 -10 -11 -12 -13 -14 -16 -17 -19 -21 -22 -24 -27 -28 -30 -31 -31 -32 -33 -34 -36 -36 -37 -37 -37 -37 -37 -36 -34 -33 -31 -30 -29 -28 -27 -25 -22 -19 -16 -14 -12 -11 -9 -8 -7 -7 -6 -5 -4 -3 -2 -1 0 1 3 5 6 8 9 11 13 15 18 20 22 24 27 29 32 34 35 35 34 32 31 30 30 31 32 33 34 35 35 35 35 36 36 36 37 38 39 39 38 38 37 37 37 36 34 33 31 31 32 34 34 34 31 28 27 28 30 31 32 30 29 27 25 24 23 25 27 30 33 34 33 31 30 29 30 30 31 32 32 31 30 30 30 29 29 28 27 27 27 27 27 28 29 30 31 32 32 32 32 32 32 31 31 31 30 29 29 28 28 28 28 28 28 27 27 27 28 28 -15 -12 -9 -8 -8 -10 -11 -11 -12 -13 -17 -21 -25 -26 -26 -24 -22 -21 -21 -23 -25 -29 -33 -38 -43 -47 -48 -49 -48 -48 -50 -53 -56 -59 -63 -66 -67 -69 -72 -75 -76 -76 -77 -78 -80 -80 -80 -78 -76 -73 -70 -67 -65 -66 -68 -71 -74 -77 -80 -81 -82 -83 -83 -82 -80 -80 -78 -73 -67 -64 -67 -70 -70 -67 -64 -61 -59 -58 -57 -55 -54 -53 -52 -51 -49 -47 -45 -43 -41 -38 -35 -34 -34 -33 -28 -22 -19 -19 -19 -19 -18 -16 -15 -15 -16 -17 -18 -16 -14 -12 -10 -10 -9 -8 -8 -9 -11 -14 -14 -14 -12 -11 -9 -9 -10 -12 -13 -13 -11 -9 -8 -10 -12 -14 -15 -12 -9 -6 -4 -4 -5 -7 -8 -7 -5 -3 -2 -4 -8 -9 -9 -6 -2 -0 -1 -4 -7 -9 -8 -5 -3 -2 -2 -3 -3 -4 -4 -4 -4 -4 -3 -4 -4 -5 -6 -6 -5 -4 -3 -3 -3 -4 -6 -6 -5 -4 -3 -4 -7 -8 -7 -5 -4 -4 -4 -3 -2 -2 -2 -4 -5 -6 -5 -4 -4 -4 -6 -8 -9 -8 -7 -5 -4 -3 -3 -3 -3 -4 -5 -5 -6 -6 -6 -7 -7 -8 -8 -8 -8 -8 -8 -7 -7 -6 -6 -5 -6 -6 -6 -7 -7 -8 -9 -9 -10 -11 -12 -14 -16 -18 -20 -22 -24 -26 -27 -29 -29 -30 -31 -33 -34 -35 -35 -36 -36 -36 -36 -36 -35 -34 -33 -31 -31 -30 -29 -27 -25 -22 -20 -17 -16 -14 -13 -12 -11 -10 -10 -9 -8 -7 -6 -4 -3 -2 0 2 4 5 7 9 10 12 14 16 18 20 22 25 28 32 34 35 35 34 33 32 31 31 31 31 31 32 33 34 36 36 37 36 36 36 36 36 36 36 36 36 36 35 34 33 33 34 36 36 34 31 26 25 25 28 30 32 32 30 28 26 26 25 25 26 28 30 33 34 33 32 30 30 30 31 31 32 32 31 30 29 29 29 29 28 28 28 27 27 27 27 28 30 31 32 32 32 32 32 32 31 31 30 29 29 28 28 28 28 28 28 28 28 28 28 28 28 -13 -11 -9 -8 -9 -10 -11 -11 -12 -14 -17 -22 -26 -27 -27 -26 -25 -25 -26 -27 -28 -31 -35 -40 -46 -49 -51 -51 -51 -50 -52 -55 -58 -62 -66 -69 -70 -72 -74 -77 -78 -79 -79 -80 -81 -81 -81 -80 -77 -74 -72 -70 -70 -71 -74 -77 -79 -81 -82 -83 -84 -84 -84 -84 -84 -82 -77 -69 -63 -63 -66 -68 -67 -65 -63 -61 -58 -56 -55 -54 -54 -53 -52 -49 -45 -43 -41 -42 -42 -40 -38 -36 -34 -31 -26 -21 -20 -19 -19 -18 -17 -17 -17 -17 -18 -17 -15 -12 -11 -10 -9 -9 -8 -8 -10 -11 -13 -13 -12 -11 -10 -10 -10 -12 -14 -15 -15 -13 -10 -9 -11 -13 -15 -15 -13 -9 -7 -5 -5 -5 -6 -7 -7 -5 -4 -4 -5 -8 -8 -7 -5 -2 -1 -2 -4 -6 -8 -7 -5 -3 -2 -2 -3 -4 -4 -4 -3 -3 -2 -2 -3 -5 -6 -7 -6 -5 -4 -4 -3 -3 -4 -5 -5 -4 -3 -3 -4 -7 -8 -6 -4 -3 -3 -4 -4 -3 -2 -2 -3 -4 -5 -4 -3 -3 -4 -6 -8 -9 -8 -7 -5 -3 -2 -3 -3 -4 -4 -5 -5 -6 -6 -6 -7 -7 -8 -8 -8 -9 -9 -9 -8 -8 -7 -6 -6 -6 -5 -5 -5 -6 -6 -6 -7 -7 -8 -9 -10 -11 -13 -15 -17 -19 -21 -23 -25 -26 -27 -29 -30 -31 -32 -32 -33 -34 -34 -35 -35 -35 -35 -34 -34 -32 -32 -31 -31 -30 -28 -26 -24 -22 -20 -19 -18 -17 -16 -15 -14 -12 -11 -11 -10 -9 -7 -5 -3 -1 1 3 5 7 8 9 11 13 15 16 18 20 23 26 29 31 33 34 34 34 33 31 30 29 29 30 31 33 35 36 37 36 36 36 36 36 35 35 35 34 34 33 33 33 35 37 37 36 33 28 25 24 26 29 31 32 30 29 27 26 26 27 27 28 28 29 30 31 32 32 32 32 31 30 31 32 31 30 29 28 28 29 29 29 28 28 28 27 27 28 29 30 32 32 32 32 32 33 32 32 31 30 29 28 28 27 27 27 27 28 28 28 28 29 29 29 -14 -12 -10 -8 -8 -9 -11 -12 -13 -15 -19 -24 -27 -28 -27 -26 -26 -27 -30 -30 -32 -34 -38 -42 -48 -51 -52 -52 -52 -53 -54 -57 -60 -64 -68 -71 -73 -75 -77 -80 -81 -81 -81 -81 -81 -81 -81 -79 -77 -74 -73 -72 -74 -77 -80 -82 -83 -83 -84 -85 -85 -86 -86 -87 -86 -82 -75 -67 -64 -65 -67 -67 -66 -64 -61 -59 -56 -54 -53 -53 -53 -51 -48 -45 -42 -41 -42 -44 -45 -43 -40 -37 -33 -28 -22 -20 -20 -19 -19 -19 -19 -20 -19 -18 -16 -15 -12 -11 -10 -10 -10 -10 -10 -11 -12 -12 -11 -10 -9 -9 -10 -11 -13 -14 -15 -15 -13 -11 -10 -11 -13 -14 -14 -12 -9 -7 -6 -6 -6 -6 -7 -7 -6 -5 -5 -6 -7 -8 -6 -4 -2 -2 -3 -5 -6 -6 -5 -4 -3 -3 -3 -4 -5 -5 -5 -4 -3 -2 -3 -4 -6 -7 -6 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -4 -5 -7 -8 -6 -3 -2 -2 -4 -5 -5 -4 -3 -3 -3 -3 -3 -3 -3 -3 -5 -7 -7 -7 -5 -4 -3 -3 -3 -3 -4 -4 -3 -4 -4 -5 -6 -7 -7 -8 -8 -8 -9 -9 -9 -9 -9 -9 -8 -8 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -8 -10 -12 -13 -15 -17 -19 -20 -22 -24 -25 -27 -28 -29 -29 -30 -31 -31 -32 -33 -33 -33 -33 -33 -32 -31 -31 -30 -30 -30 -29 -28 -27 -25 -24 -24 -23 -22 -21 -20 -18 -16 -15 -14 -13 -13 -12 -10 -8 -6 -3 -0 2 4 6 7 9 11 12 13 14 15 17 20 23 26 29 31 33 34 33 32 31 29 29 29 29 31 33 35 36 36 35 36 36 36 36 36 36 35 33 32 32 34 36 37 37 35 32 29 27 27 29 31 31 31 29 28 27 27 27 28 29 29 28 28 28 28 29 31 32 33 32 31 30 31 31 29 28 27 28 28 29 29 29 28 28 27 28 28 30 31 32 32 32 32 33 33 33 32 32 31 29 28 28 27 27 27 27 28 28 29 29 29 30 30 -15 -13 -11 -8 -7 -9 -12 -14 -15 -17 -21 -25 -28 -28 -27 -28 -30 -33 -35 -35 -35 -37 -41 -46 -50 -53 -54 -53 -54 -54 -57 -59 -63 -66 -70 -73 -76 -78 -81 -83 -84 -83 -82 -82 -82 -81 -80 -78 -76 -74 -73 -73 -77 -81 -84 -85 -85 -85 -86 -86 -86 -87 -87 -88 -87 -80 -73 -69 -68 -69 -70 -68 -65 -62 -58 -55 -54 -54 -53 -53 -51 -48 -45 -44 -44 -45 -47 -49 -48 -45 -41 -36 -32 -27 -22 -20 -20 -19 -20 -21 -22 -21 -19 -17 -15 -13 -12 -11 -11 -11 -11 -12 -13 -12 -11 -9 -8 -7 -8 -9 -11 -13 -14 -14 -14 -12 -11 -10 -11 -12 -13 -12 -11 -9 -8 -7 -7 -7 -7 -8 -8 -7 -6 -5 -6 -7 -7 -6 -4 -3 -3 -4 -6 -6 -6 -4 -3 -3 -3 -4 -5 -6 -6 -5 -5 -4 -4 -4 -5 -6 -6 -5 -3 -3 -3 -4 -5 -5 -5 -5 -5 -4 -4 -5 -6 -7 -8 -6 -3 -2 -3 -5 -7 -7 -5 -4 -3 -3 -3 -3 -2 -2 -3 -4 -5 -5 -4 -3 -3 -2 -2 -3 -4 -4 -3 -2 -1 -1 -2 -2 -4 -5 -6 -6 -6 -6 -7 -7 -8 -8 -8 -8 -8 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -6 -6 -6 -7 -8 -9 -11 -13 -15 -16 -18 -20 -21 -23 -25 -26 -27 -27 -28 -28 -29 -30 -30 -31 -31 -31 -30 -29 -28 -28 -28 -28 -28 -28 -28 -27 -27 -27 -27 -27 -26 -25 -24 -21 -19 -17 -16 -16 -16 -15 -15 -14 -12 -9 -6 -3 -1 2 4 7 8 10 10 10 11 13 15 18 21 24 27 29 31 32 32 32 31 30 29 29 30 32 33 34 34 35 35 35 36 37 38 38 37 35 34 34 35 37 38 38 36 34 32 32 32 32 32 31 30 29 28 28 28 29 30 30 30 28 27 26 26 27 29 31 32 32 31 31 31 30 29 27 26 27 28 28 29 29 28 28 28 28 29 31 32 32 32 32 32 33 33 34 33 33 32 31 30 29 29 28 28 28 29 29 29 30 30 31 31 -15 -14 -11 -9 -7 -10 -14 -17 -19 -20 -23 -26 -28 -28 -27 -29 -32 -37 -40 -39 -39 -40 -44 -49 -52 -55 -55 -55 -55 -56 -58 -61 -64 -68 -72 -76 -79 -82 -84 -85 -85 -84 -84 -84 -83 -82 -80 -78 -76 -74 -73 -75 -77 -81 -83 -85 -85 -86 -87 -87 -87 -87 -87 -87 -84 -78 -73 -71 -71 -72 -72 -68 -64 -60 -56 -55 -54 -54 -53 -51 -48 -46 -45 -46 -48 -50 -51 -51 -48 -44 -39 -34 -31 -27 -21 -19 -19 -20 -21 -22 -22 -20 -18 -16 -16 -15 -14 -13 -12 -13 -14 -15 -14 -11 -9 -8 -7 -8 -10 -11 -12 -12 -12 -11 -11 -10 -10 -11 -12 -13 -12 -11 -9 -9 -8 -8 -8 -8 -9 -9 -8 -7 -6 -5 -6 -6 -5 -3 -3 -4 -5 -6 -6 -5 -4 -3 -2 -3 -4 -5 -6 -7 -6 -6 -5 -5 -5 -5 -5 -5 -3 -2 -2 -2 -4 -5 -5 -6 -6 -6 -6 -7 -7 -8 -9 -8 -6 -4 -3 -4 -7 -9 -9 -7 -5 -4 -4 -4 -3 -3 -3 -3 -4 -4 -4 -3 -2 -1 -1 -2 -3 -3 -4 -4 -3 -2 -1 -0 -1 -1 -2 -2 -2 -3 -3 -3 -3 -4 -4 -5 -5 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -7 -6 -6 -6 -6 -6 -7 -8 -9 -10 -12 -14 -16 -18 -19 -21 -23 -24 -25 -25 -26 -26 -26 -27 -28 -28 -28 -28 -28 -27 -26 -26 -26 -26 -26 -26 -26 -26 -26 -26 -27 -27 -28 -27 -26 -24 -22 -20 -19 -18 -18 -18 -18 -18 -17 -15 -13 -11 -7 -4 -0 3 5 7 7 8 8 9 11 14 17 20 23 25 28 30 31 32 32 31 31 31 30 31 32 32 33 34 34 34 35 36 37 38 38 37 37 37 38 38 39 39 39 38 37 36 35 35 33 32 31 30 30 30 30 30 31 30 29 28 27 25 25 25 27 28 29 30 30 30 30 30 28 26 26 26 27 28 28 29 29 29 29 29 30 31 31 31 31 31 32 33 34 34 34 34 34 33 32 32 32 31 31 30 30 30 30 31 31 31 32 -14 -13 -12 -10 -9 -11 -15 -19 -22 -24 -25 -26 -28 -28 -28 -29 -34 -40 -44 -45 -44 -45 -48 -52 -56 -57 -57 -57 -56 -57 -59 -62 -65 -69 -74 -79 -82 -84 -85 -86 -86 -85 -85 -85 -85 -84 -81 -79 -77 -75 -75 -75 -76 -79 -81 -83 -85 -86 -87 -86 -85 -85 -84 -83 -80 -76 -72 -71 -71 -72 -71 -68 -63 -58 -55 -54 -54 -54 -53 -51 -49 -48 -48 -48 -49 -50 -50 -49 -47 -43 -39 -35 -31 -28 -21 -19 -19 -19 -20 -21 -21 -20 -19 -19 -18 -17 -16 -15 -15 -16 -16 -14 -13 -11 -10 -10 -11 -11 -11 -10 -9 -9 -9 -9 -9 -10 -11 -12 -13 -13 -12 -10 -9 -8 -8 -8 -9 -11 -11 -10 -7 -5 -4 -5 -5 -4 -4 -3 -4 -5 -6 -6 -5 -3 -3 -2 -3 -4 -5 -6 -6 -6 -6 -5 -5 -5 -5 -5 -4 -2 -1 -2 -3 -5 -6 -6 -6 -6 -7 -9 -10 -11 -11 -11 -9 -8 -6 -5 -6 -9 -11 -11 -9 -6 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -3 -2 -2 -1 -2 -2 -3 -4 -4 -4 -3 -3 -2 -2 -2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -4 -4 -5 -5 -6 -6 -6 -7 -7 -8 -8 -9 -10 -12 -13 -15 -17 -19 -21 -22 -23 -24 -24 -24 -24 -25 -25 -26 -26 -26 -26 -26 -26 -25 -25 -25 -25 -25 -26 -26 -26 -26 -26 -26 -27 -27 -27 -27 -25 -24 -22 -21 -21 -21 -21 -21 -21 -20 -19 -17 -14 -11 -7 -3 0 3 4 5 6 6 8 11 14 16 19 22 24 27 29 30 31 32 32 32 31 31 31 31 32 33 34 34 34 35 36 37 37 38 38 38 39 39 40 40 41 41 40 39 38 36 35 33 32 31 31 31 31 31 30 29 28 27 26 25 25 24 25 25 26 27 27 28 28 28 27 26 26 25 26 27 28 29 30 30 30 30 31 31 31 31 31 32 33 34 35 35 35 36 36 35 35 35 35 35 35 34 33 32 32 32 32 32 32 -13 -13 -12 -12 -12 -13 -17 -21 -24 -27 -28 -28 -28 -29 -29 -32 -36 -43 -48 -51 -51 -50 -51 -55 -59 -60 -60 -59 -58 -58 -59 -62 -65 -70 -76 -82 -84 -85 -85 -85 -85 -85 -85 -85 -84 -83 -81 -79 -78 -77 -76 -75 -76 -79 -81 -83 -84 -85 -86 -84 -83 -81 -80 -79 -77 -73 -70 -69 -70 -71 -70 -65 -60 -56 -53 -53 -54 -54 -53 -52 -50 -49 -49 -48 -48 -48 -48 -48 -47 -43 -39 -35 -32 -28 -21 -19 -19 -19 -20 -20 -20 -21 -21 -21 -20 -19 -18 -17 -17 -16 -15 -14 -13 -13 -13 -13 -13 -11 -10 -9 -8 -8 -9 -9 -10 -11 -12 -13 -14 -13 -11 -9 -8 -7 -8 -10 -13 -13 -11 -7 -4 -3 -4 -5 -5 -5 -4 -4 -5 -6 -5 -4 -3 -2 -2 -3 -4 -5 -6 -6 -6 -5 -4 -4 -5 -5 -5 -4 -2 -2 -3 -5 -7 -8 -7 -7 -7 -8 -10 -12 -13 -13 -12 -11 -9 -8 -7 -8 -10 -11 -10 -9 -7 -6 -6 -6 -6 -5 -5 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -3 -4 -4 -4 -4 -4 -3 -3 -3 -2 -2 -1 -1 -0 -0 0 0 -0 -1 -2 -2 -2 -1 -1 -0 0 0 0 0 -0 -1 -2 -3 -4 -5 -6 -7 -7 -8 -9 -9 -10 -11 -12 -13 -14 -16 -18 -20 -21 -22 -22 -22 -23 -23 -23 -24 -24 -25 -25 -25 -25 -25 -25 -25 -25 -26 -26 -27 -26 -26 -26 -26 -26 -27 -28 -29 -28 -27 -26 -25 -25 -25 -25 -25 -25 -24 -23 -22 -20 -18 -14 -11 -7 -3 -1 1 3 4 5 7 10 12 15 18 21 24 26 28 29 30 31 32 32 31 31 31 32 33 34 34 35 35 35 36 37 38 38 39 38 38 39 40 41 42 42 41 40 38 36 35 34 33 32 31 31 30 29 28 28 27 26 26 25 23 23 23 23 24 24 25 26 27 27 27 27 27 27 27 29 30 31 32 32 32 31 31 31 31 32 33 34 35 36 36 37 37 37 38 38 38 39 39 38 37 36 35 34 33 32 32 32 -13 -13 -13 -14 -15 -16 -19 -21 -25 -28 -30 -30 -28 -30 -31 -35 -40 -46 -51 -55 -57 -56 -56 -58 -61 -62 -62 -61 -61 -62 -62 -65 -68 -73 -78 -83 -85 -85 -85 -84 -83 -83 -84 -83 -82 -81 -80 -78 -77 -77 -76 -77 -78 -80 -81 -83 -84 -85 -85 -82 -80 -78 -78 -76 -73 -69 -67 -67 -68 -68 -66 -60 -56 -53 -52 -52 -53 -53 -52 -50 -49 -48 -48 -47 -46 -46 -46 -47 -48 -45 -40 -36 -33 -29 -22 -20 -20 -20 -20 -21 -21 -21 -22 -22 -22 -21 -20 -19 -18 -16 -15 -15 -15 -16 -16 -14 -13 -11 -10 -9 -9 -9 -10 -10 -11 -12 -14 -14 -14 -12 -9 -8 -7 -9 -11 -13 -13 -10 -7 -4 -3 -4 -6 -7 -6 -5 -5 -5 -5 -4 -3 -2 -1 -2 -3 -4 -5 -6 -6 -5 -3 -2 -2 -3 -5 -5 -4 -3 -2 -4 -7 -9 -10 -9 -8 -8 -9 -11 -12 -13 -13 -13 -12 -11 -10 -10 -10 -11 -11 -10 -8 -7 -7 -7 -7 -7 -7 -6 -6 -6 -6 -5 -5 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -1 -1 -1 -0 -0 0 -0 -1 -1 -2 -3 -3 -2 -2 -1 -0 0 1 1 1 1 -0 -1 -3 -4 -5 -6 -7 -7 -8 -9 -10 -10 -11 -12 -13 -14 -16 -17 -18 -20 -20 -21 -21 -21 -22 -22 -23 -23 -24 -24 -24 -24 -24 -24 -25 -26 -27 -28 -28 -27 -26 -26 -26 -27 -28 -30 -30 -30 -30 -30 -30 -31 -30 -30 -29 -28 -27 -26 -24 -22 -20 -17 -13 -10 -7 -4 -1 1 2 4 6 8 11 14 17 20 22 24 26 28 30 31 31 31 31 31 31 32 32 34 35 35 35 36 36 37 38 39 38 37 37 37 38 40 41 42 41 39 38 36 35 34 33 32 30 29 29 28 28 28 28 26 25 23 22 22 22 22 22 23 24 25 27 28 29 30 31 31 32 33 34 34 34 33 32 31 31 32 33 34 35 37 37 38 38 39 39 39 40 40 41 41 41 40 39 38 36 35 34 33 32 -13 -14 -15 -17 -18 -19 -21 -23 -25 -28 -30 -32 -31 -31 -34 -38 -43 -49 -54 -59 -61 -61 -60 -61 -63 -64 -64 -64 -65 -65 -66 -68 -71 -75 -80 -84 -86 -85 -84 -83 -82 -82 -82 -82 -81 -79 -78 -77 -76 -76 -76 -78 -80 -81 -82 -83 -84 -84 -84 -81 -78 -77 -76 -74 -70 -66 -64 -65 -65 -64 -59 -54 -51 -50 -50 -51 -51 -50 -48 -46 -46 -46 -46 -45 -45 -45 -46 -48 -48 -46 -41 -37 -34 -31 -24 -22 -22 -22 -21 -21 -21 -21 -22 -22 -22 -22 -21 -20 -18 -17 -16 -17 -17 -17 -16 -14 -12 -11 -11 -11 -11 -11 -11 -11 -12 -13 -14 -13 -11 -9 -8 -8 -10 -12 -14 -13 -10 -6 -4 -4 -6 -9 -9 -8 -6 -5 -5 -5 -4 -3 -1 -1 -1 -3 -4 -6 -6 -5 -3 -1 -0 -1 -2 -4 -5 -5 -4 -4 -5 -8 -10 -11 -10 -9 -9 -10 -11 -12 -12 -12 -11 -11 -11 -11 -11 -11 -12 -11 -10 -9 -8 -8 -8 -9 -9 -8 -7 -7 -6 -6 -6 -6 -6 -6 -6 -5 -4 -3 -3 -2 -2 -1 -1 -1 -1 -0 -0 0 0 0 1 0 0 0 1 1 0 -0 -1 -2 -3 -3 -3 -3 -2 -1 -0 0 1 1 1 0 -1 -2 -3 -4 -4 -5 -6 -6 -7 -8 -9 -10 -11 -13 -14 -15 -16 -17 -18 -19 -20 -21 -21 -21 -21 -21 -22 -22 -22 -22 -22 -22 -23 -25 -26 -28 -29 -29 -28 -27 -27 -26 -27 -28 -29 -30 -31 -32 -33 -35 -35 -35 -35 -34 -33 -31 -30 -28 -26 -24 -21 -18 -15 -12 -9 -6 -3 -0 2 4 6 8 10 12 15 18 20 23 26 28 30 31 31 31 31 30 30 31 31 33 34 35 36 37 38 39 39 38 37 36 35 35 36 38 39 40 40 39 38 36 35 34 33 32 30 29 28 28 29 28 27 25 23 22 21 21 21 22 23 24 26 27 30 32 34 36 37 38 38 38 37 36 34 33 32 32 32 34 35 36 37 38 39 39 40 40 40 41 41 41 41 41 40 40 39 38 37 35 34 33 -15 -16 -18 -19 -20 -22 -24 -26 -27 -28 -30 -33 -36 -37 -39 -41 -46 -51 -57 -62 -65 -65 -63 -63 -65 -66 -67 -67 -68 -70 -70 -72 -74 -77 -82 -86 -86 -86 -84 -82 -81 -81 -81 -80 -79 -78 -77 -76 -76 -76 -77 -79 -80 -81 -82 -83 -84 -84 -83 -80 -77 -76 -75 -72 -68 -63 -62 -62 -61 -58 -53 -49 -47 -48 -49 -49 -48 -45 -42 -41 -41 -43 -44 -44 -45 -46 -47 -49 -49 -46 -42 -38 -34 -32 -26 -24 -24 -23 -22 -21 -21 -21 -22 -22 -22 -22 -21 -20 -18 -18 -18 -19 -18 -16 -14 -12 -11 -11 -11 -11 -12 -12 -12 -12 -12 -12 -12 -11 -9 -9 -9 -11 -12 -13 -12 -9 -6 -5 -6 -8 -10 -10 -8 -6 -5 -5 -5 -4 -3 -1 -0 -1 -3 -5 -6 -5 -4 -1 0 1 -0 -2 -5 -7 -6 -5 -4 -6 -9 -11 -10 -9 -8 -8 -8 -10 -10 -10 -10 -9 -10 -10 -11 -12 -12 -12 -12 -11 -10 -10 -10 -11 -11 -11 -10 -9 -8 -8 -7 -7 -7 -7 -7 -6 -6 -5 -4 -3 -2 -2 -1 -0 0 1 1 2 2 2 2 2 2 2 2 2 2 2 1 1 0 -1 -2 -2 -3 -2 -2 -1 -0 1 1 2 2 1 1 -0 -2 -3 -4 -4 -5 -5 -5 -6 -7 -9 -10 -12 -13 -14 -15 -16 -17 -18 -20 -20 -20 -20 -20 -19 -19 -19 -19 -19 -19 -20 -21 -23 -25 -27 -28 -29 -28 -28 -28 -28 -28 -28 -29 -30 -31 -32 -34 -36 -37 -39 -39 -39 -38 -36 -34 -32 -29 -27 -24 -21 -19 -16 -14 -11 -8 -4 -1 1 3 5 7 8 11 14 17 20 23 26 28 30 31 31 31 31 30 30 30 30 32 33 35 36 37 39 39 39 37 35 34 33 33 34 35 37 37 38 38 38 37 36 35 34 32 31 30 29 29 28 27 25 24 23 23 23 23 24 25 26 27 29 31 33 36 39 41 42 42 41 40 38 36 34 33 33 33 34 35 36 36 37 38 39 40 40 40 40 40 39 38 38 37 37 38 37 37 36 35 35 -17 -18 -20 -21 -23 -24 -26 -29 -30 -30 -30 -33 -39 -44 -45 -46 -48 -53 -60 -65 -68 -68 -66 -65 -66 -67 -68 -68 -69 -71 -73 -75 -77 -80 -84 -87 -87 -86 -84 -82 -81 -81 -80 -79 -78 -77 -76 -76 -76 -76 -77 -79 -81 -81 -82 -83 -84 -84 -83 -79 -77 -75 -74 -71 -66 -61 -59 -58 -56 -53 -48 -45 -44 -45 -46 -46 -44 -40 -37 -36 -38 -40 -43 -44 -45 -46 -48 -49 -50 -47 -43 -38 -34 -32 -27 -26 -25 -24 -23 -22 -22 -22 -22 -21 -21 -20 -20 -19 -19 -20 -21 -20 -18 -15 -13 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -9 -9 -10 -11 -12 -12 -11 -8 -6 -5 -6 -8 -11 -11 -8 -6 -5 -5 -5 -5 -3 -1 -0 -1 -4 -5 -6 -4 -2 0 1 1 -1 -4 -6 -7 -6 -4 -4 -5 -7 -8 -8 -6 -5 -5 -6 -7 -7 -7 -7 -7 -8 -9 -10 -11 -12 -12 -12 -12 -11 -11 -12 -13 -14 -14 -13 -12 -10 -10 -9 -9 -8 -8 -8 -7 -7 -6 -6 -5 -5 -4 -3 -3 -2 -2 -1 -1 -0 1 1 1 2 2 2 3 3 3 3 3 2 2 1 -0 -1 -2 -2 -1 -0 0 1 2 3 4 4 4 3 1 -1 -3 -4 -5 -5 -5 -5 -6 -7 -8 -10 -12 -13 -14 -15 -16 -17 -18 -18 -18 -18 -18 -18 -17 -17 -17 -17 -17 -17 -18 -20 -22 -24 -25 -26 -27 -28 -28 -29 -29 -30 -30 -30 -31 -32 -34 -36 -38 -39 -41 -41 -41 -39 -37 -35 -32 -30 -27 -24 -21 -19 -17 -14 -12 -9 -5 -3 -0 2 4 6 8 12 15 18 21 24 27 29 30 31 32 32 31 30 29 29 30 31 33 34 36 37 38 38 37 35 34 32 31 30 31 32 33 34 36 37 37 37 37 36 35 34 33 32 30 28 27 26 25 25 26 26 27 28 28 29 29 30 31 33 36 40 42 44 45 44 43 41 39 37 36 35 35 34 34 34 34 35 36 37 38 38 38 37 36 35 33 32 31 32 33 34 35 35 36 36 -20 -21 -23 -24 -25 -27 -29 -32 -34 -34 -33 -35 -41 -47 -49 -50 -51 -55 -62 -68 -71 -71 -69 -68 -68 -68 -68 -68 -70 -72 -75 -77 -80 -83 -86 -88 -88 -86 -84 -82 -80 -79 -79 -78 -78 -77 -76 -76 -76 -77 -79 -80 -81 -81 -82 -83 -84 -84 -83 -78 -75 -74 -73 -70 -63 -58 -55 -53 -51 -47 -43 -41 -41 -42 -42 -42 -40 -37 -35 -35 -37 -40 -43 -44 -45 -46 -48 -49 -49 -47 -42 -37 -33 -31 -27 -26 -25 -24 -24 -24 -23 -23 -22 -20 -19 -18 -18 -19 -21 -22 -23 -21 -18 -15 -13 -11 -11 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -9 -10 -11 -12 -11 -10 -7 -5 -5 -6 -8 -9 -10 -8 -5 -5 -5 -5 -5 -3 -1 -0 -2 -4 -6 -6 -3 -1 1 1 0 -2 -4 -6 -6 -4 -3 -2 -3 -5 -6 -5 -4 -3 -4 -4 -4 -4 -4 -5 -6 -7 -8 -9 -10 -11 -11 -11 -12 -12 -12 -14 -15 -15 -15 -14 -13 -12 -11 -11 -10 -10 -10 -9 -9 -8 -8 -8 -7 -7 -7 -6 -6 -6 -6 -6 -5 -5 -4 -4 -4 -3 -2 -1 -0 0 1 2 2 3 3 3 2 1 0 -0 -1 -1 -0 1 2 3 4 5 6 6 6 4 1 -1 -4 -5 -6 -7 -6 -6 -6 -6 -7 -9 -10 -11 -12 -13 -13 -14 -14 -15 -15 -16 -16 -15 -15 -14 -14 -15 -15 -16 -17 -18 -20 -21 -23 -24 -26 -28 -30 -31 -32 -32 -32 -32 -33 -34 -36 -38 -39 -41 -42 -42 -41 -39 -36 -34 -32 -29 -26 -23 -21 -18 -17 -15 -12 -9 -6 -4 -2 1 3 7 10 14 17 19 21 23 26 28 29 31 31 31 31 30 29 29 29 30 31 32 33 34 35 35 35 34 32 30 29 28 28 28 30 32 34 35 36 37 37 37 37 36 35 32 30 28 27 27 28 29 30 30 30 30 30 31 31 31 32 34 37 40 43 46 47 48 46 44 42 39 37 35 34 33 33 33 33 34 35 36 36 36 35 34 32 30 27 26 24 25 27 30 33 35 36 -24 -25 -26 -27 -27 -29 -31 -35 -39 -40 -39 -39 -43 -48 -52 -53 -55 -59 -65 -71 -74 -74 -73 -71 -71 -70 -69 -69 -71 -74 -76 -78 -81 -85 -88 -89 -88 -86 -84 -82 -79 -78 -78 -78 -78 -77 -77 -76 -77 -78 -79 -80 -80 -81 -82 -83 -84 -83 -81 -76 -74 -73 -70 -66 -59 -54 -51 -48 -45 -41 -38 -37 -38 -39 -40 -40 -38 -36 -36 -36 -37 -39 -42 -43 -44 -44 -45 -46 -46 -45 -41 -36 -32 -29 -26 -25 -25 -24 -24 -24 -24 -23 -22 -20 -18 -17 -17 -19 -22 -24 -24 -22 -19 -16 -14 -12 -11 -10 -8 -7 -7 -7 -7 -8 -8 -8 -9 -10 -11 -11 -11 -9 -7 -5 -5 -5 -7 -7 -7 -6 -5 -4 -5 -5 -5 -3 -1 -1 -2 -4 -6 -6 -3 -0 1 1 -1 -3 -5 -5 -4 -3 -1 -1 -2 -4 -5 -4 -3 -3 -3 -4 -4 -4 -4 -5 -6 -7 -8 -8 -9 -9 -10 -11 -11 -11 -12 -13 -14 -15 -15 -14 -13 -12 -12 -12 -12 -12 -11 -11 -10 -10 -10 -9 -9 -9 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -7 -7 -6 -5 -3 -2 -1 0 1 2 2 2 2 1 1 0 -0 -0 0 1 2 3 4 5 6 7 6 4 1 -2 -4 -6 -7 -7 -6 -6 -5 -6 -6 -7 -8 -8 -8 -8 -8 -9 -10 -11 -11 -11 -11 -11 -11 -11 -11 -12 -14 -15 -16 -17 -18 -19 -21 -24 -26 -29 -32 -33 -33 -33 -34 -34 -35 -36 -38 -39 -40 -41 -42 -41 -39 -36 -34 -32 -30 -27 -25 -22 -20 -18 -16 -14 -12 -9 -7 -4 -1 1 5 8 11 14 16 18 19 21 23 25 27 28 29 30 30 29 29 28 28 28 29 29 30 31 31 32 32 32 31 29 27 26 26 26 28 30 31 33 35 36 37 38 39 38 36 33 31 30 30 31 32 33 33 32 31 30 30 31 31 31 31 33 36 40 45 49 51 50 48 45 43 40 37 35 34 33 33 34 34 34 35 35 34 34 33 32 31 28 25 21 21 23 26 30 33 35 -28 -29 -29 -30 -30 -31 -33 -38 -44 -46 -45 -43 -45 -49 -53 -56 -60 -63 -68 -74 -76 -76 -76 -75 -75 -74 -72 -72 -73 -75 -77 -78 -82 -85 -88 -88 -87 -85 -83 -82 -80 -79 -78 -78 -78 -78 -78 -78 -79 -79 -79 -79 -79 -80 -81 -82 -82 -81 -78 -74 -71 -70 -67 -62 -55 -51 -47 -43 -39 -36 -34 -34 -35 -37 -38 -39 -38 -37 -37 -38 -38 -39 -40 -41 -41 -42 -41 -41 -41 -42 -41 -38 -34 -30 -25 -24 -24 -24 -24 -24 -24 -23 -21 -19 -17 -16 -17 -19 -22 -23 -24 -22 -20 -17 -16 -14 -12 -10 -8 -6 -6 -7 -8 -8 -8 -7 -8 -9 -10 -10 -9 -7 -6 -5 -5 -6 -6 -5 -4 -4 -5 -6 -6 -5 -3 -1 -1 -2 -4 -5 -5 -2 -0 1 -0 -2 -4 -5 -5 -3 -1 0 0 -2 -4 -5 -5 -4 -4 -4 -5 -6 -6 -6 -6 -7 -7 -7 -7 -8 -8 -9 -9 -10 -10 -11 -12 -12 -13 -13 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -11 -11 -10 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -8 -7 -6 -4 -3 -2 -2 -1 -0 1 1 1 1 1 0 -0 -0 -0 -0 1 2 3 4 5 5 4 2 -0 -2 -4 -5 -6 -5 -5 -5 -5 -5 -4 -3 -2 -2 -1 -2 -2 -3 -4 -4 -5 -5 -5 -5 -6 -7 -8 -10 -12 -14 -16 -17 -18 -20 -21 -24 -26 -29 -31 -33 -34 -34 -35 -36 -36 -37 -38 -39 -40 -40 -40 -38 -36 -33 -31 -29 -27 -25 -23 -20 -18 -16 -14 -12 -10 -8 -6 -3 -0 2 5 7 10 12 14 16 17 18 19 21 23 25 26 28 28 28 27 27 27 26 26 27 27 28 29 30 30 30 30 28 27 26 25 26 27 28 30 32 34 36 38 39 39 38 37 36 35 34 34 35 35 35 33 32 32 32 32 31 31 31 32 33 37 42 47 50 50 49 46 44 42 39 37 36 35 35 35 35 34 34 33 33 34 34 35 35 34 32 28 26 26 28 31 33 35 -31 -33 -33 -32 -32 -33 -36 -42 -49 -52 -50 -48 -48 -51 -54 -58 -64 -68 -72 -76 -77 -77 -77 -78 -78 -77 -75 -73 -73 -75 -76 -78 -81 -85 -88 -87 -86 -85 -84 -83 -82 -80 -79 -79 -79 -79 -79 -80 -81 -80 -79 -78 -78 -78 -79 -80 -80 -78 -74 -70 -68 -66 -63 -58 -52 -48 -43 -39 -36 -33 -32 -32 -34 -36 -38 -39 -38 -38 -38 -38 -39 -39 -38 -38 -38 -38 -38 -38 -38 -39 -40 -38 -34 -29 -23 -23 -23 -23 -23 -23 -24 -23 -21 -19 -17 -17 -18 -19 -21 -22 -23 -22 -20 -18 -17 -15 -13 -11 -9 -8 -8 -8 -8 -6 -6 -6 -7 -9 -10 -9 -8 -8 -7 -6 -6 -5 -4 -4 -4 -5 -6 -6 -4 -2 -1 -1 -3 -4 -4 -3 -1 0 0 -2 -4 -5 -5 -3 -1 1 1 1 -2 -4 -6 -6 -5 -5 -6 -7 -8 -8 -7 -7 -7 -7 -7 -6 -6 -6 -7 -8 -9 -9 -10 -10 -10 -10 -11 -11 -11 -11 -12 -12 -12 -12 -12 -12 -11 -11 -10 -10 -10 -9 -8 -8 -7 -7 -7 -8 -8 -8 -8 -7 -7 -7 -7 -8 -8 -8 -7 -6 -5 -4 -4 -3 -3 -3 -2 -1 -0 0 1 1 0 -0 -1 -1 -1 -1 -0 0 1 2 2 2 1 0 -1 -2 -3 -3 -4 -4 -4 -4 -3 -1 1 3 5 5 5 5 5 4 4 4 4 3 2 1 0 -2 -5 -8 -11 -14 -16 -18 -19 -20 -21 -23 -25 -27 -29 -31 -33 -34 -35 -36 -36 -37 -38 -38 -39 -38 -37 -35 -32 -30 -28 -26 -25 -23 -21 -18 -16 -14 -12 -10 -8 -6 -4 -2 0 2 4 6 9 11 12 13 14 15 16 17 19 21 23 25 26 26 26 26 25 25 25 25 26 26 27 28 29 29 30 29 28 27 26 26 27 29 31 32 34 36 37 38 38 39 39 38 38 37 37 37 36 35 34 34 34 34 33 33 32 32 33 34 38 42 46 46 45 44 43 42 41 40 39 38 37 37 36 35 34 33 33 34 35 37 38 39 39 40 40 40 39 38 36 36 -35 -37 -36 -35 -34 -36 -40 -47 -54 -57 -56 -53 -52 -53 -56 -61 -67 -72 -76 -78 -79 -78 -78 -78 -80 -79 -77 -74 -72 -72 -74 -76 -80 -85 -87 -87 -86 -85 -85 -84 -82 -79 -79 -79 -79 -79 -79 -80 -81 -80 -79 -77 -76 -76 -77 -78 -77 -74 -71 -67 -64 -62 -59 -55 -49 -45 -40 -37 -35 -33 -31 -31 -33 -35 -37 -38 -38 -37 -38 -38 -39 -38 -36 -36 -36 -36 -36 -36 -37 -38 -39 -37 -33 -28 -23 -22 -22 -22 -22 -23 -23 -22 -20 -19 -18 -18 -19 -19 -20 -21 -22 -21 -20 -19 -17 -16 -14 -12 -10 -9 -9 -7 -5 -3 -4 -5 -7 -8 -8 -8 -7 -7 -7 -7 -6 -5 -4 -4 -5 -5 -5 -4 -2 -1 -1 -3 -4 -3 -2 -0 1 -0 -3 -4 -5 -4 -2 1 2 2 1 -1 -4 -5 -5 -5 -5 -6 -8 -8 -8 -8 -7 -7 -7 -6 -5 -5 -5 -6 -7 -8 -8 -9 -9 -9 -9 -9 -9 -10 -10 -10 -10 -10 -10 -10 -9 -8 -8 -8 -8 -8 -7 -6 -5 -5 -5 -5 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -3 -3 -3 -4 -4 -4 -3 -2 -1 -0 0 0 -0 -0 -1 -1 -1 -1 -1 -0 -0 -0 -0 -0 -1 -1 -1 -1 -1 -2 -2 -3 -2 -0 2 4 7 9 10 11 12 12 12 12 12 11 10 10 9 7 5 2 -1 -5 -8 -12 -15 -17 -18 -20 -21 -22 -23 -25 -27 -30 -32 -33 -34 -35 -35 -36 -36 -36 -36 -35 -33 -31 -28 -27 -25 -24 -22 -20 -18 -16 -14 -12 -9 -7 -6 -4 -2 -1 1 2 4 6 8 9 10 11 13 14 14 15 16 18 20 22 24 25 26 25 24 24 24 24 25 26 27 28 29 29 30 30 30 29 29 29 29 30 31 32 33 34 35 36 38 38 39 39 39 38 38 37 36 37 37 37 37 36 35 34 34 33 33 34 36 39 39 39 39 39 39 40 40 40 39 38 37 36 35 34 34 34 35 37 38 39 40 43 48 50 50 48 45 42 39 -40 -41 -39 -37 -37 -40 -46 -52 -58 -61 -60 -57 -56 -56 -59 -63 -68 -74 -78 -80 -80 -79 -78 -78 -80 -80 -79 -76 -73 -71 -72 -75 -79 -83 -86 -86 -85 -85 -84 -82 -80 -79 -79 -80 -80 -80 -80 -80 -79 -78 -78 -76 -75 -75 -75 -75 -74 -72 -68 -64 -61 -58 -55 -51 -46 -42 -38 -36 -35 -33 -32 -32 -33 -35 -36 -36 -36 -36 -37 -38 -38 -37 -35 -34 -34 -35 -36 -36 -37 -38 -38 -36 -32 -27 -22 -22 -21 -21 -21 -22 -21 -20 -19 -19 -19 -19 -19 -19 -19 -20 -21 -21 -19 -18 -17 -16 -14 -13 -12 -10 -8 -5 -2 -2 -3 -5 -6 -6 -5 -5 -6 -7 -7 -7 -5 -4 -4 -4 -4 -4 -3 -2 -1 -2 -3 -4 -3 -2 -0 -0 -1 -3 -4 -4 -3 -1 1 2 1 0 -1 -2 -3 -3 -3 -4 -5 -7 -7 -7 -6 -6 -6 -6 -5 -4 -4 -4 -5 -6 -7 -8 -8 -9 -9 -8 -8 -8 -8 -8 -7 -7 -6 -6 -6 -5 -5 -4 -5 -5 -5 -5 -4 -3 -2 -3 -4 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -4 -4 -3 -2 -1 -1 -0 -0 -0 -0 -0 -0 0 0 0 -0 -1 -1 -1 -1 -1 -0 0 0 -0 -0 0 1 3 4 7 9 11 13 14 15 15 15 15 15 15 14 14 14 13 12 9 6 3 -1 -5 -9 -12 -14 -16 -18 -19 -20 -21 -23 -25 -27 -29 -31 -32 -33 -34 -34 -34 -33 -32 -30 -28 -26 -25 -24 -23 -21 -18 -16 -14 -13 -11 -9 -7 -5 -3 -2 -1 1 2 3 5 6 7 8 10 11 12 13 13 13 14 16 18 21 23 25 25 24 24 23 23 23 24 25 26 28 28 29 30 30 31 32 32 31 30 30 30 30 31 32 34 35 36 37 37 38 38 38 38 38 38 39 39 39 39 38 37 36 35 35 34 34 34 33 34 34 35 36 37 38 39 39 39 38 37 37 37 37 37 39 39 39 38 39 45 51 54 53 50 47 44 42 -44 -44 -42 -40 -40 -44 -50 -56 -61 -63 -63 -60 -59 -61 -63 -66 -69 -73 -77 -80 -81 -81 -80 -78 -78 -78 -78 -76 -74 -72 -71 -74 -78 -82 -85 -86 -85 -84 -82 -81 -80 -80 -81 -81 -81 -81 -80 -79 -77 -76 -76 -76 -75 -75 -74 -74 -73 -70 -66 -62 -58 -55 -52 -48 -44 -40 -37 -36 -35 -34 -33 -32 -33 -33 -34 -34 -34 -35 -36 -37 -37 -36 -34 -34 -34 -35 -36 -37 -38 -38 -38 -36 -32 -28 -22 -21 -21 -21 -21 -21 -20 -19 -19 -19 -19 -19 -18 -18 -18 -19 -20 -19 -18 -17 -16 -15 -14 -13 -12 -9 -6 -2 -1 -2 -3 -3 -3 -2 -2 -3 -5 -6 -6 -6 -5 -4 -4 -3 -3 -2 -1 -1 -1 -2 -3 -3 -2 -1 -1 -2 -3 -4 -3 -2 -1 -0 -0 -1 -1 -1 -1 -1 -0 -0 -2 -3 -4 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -5 -6 -6 -7 -8 -8 -8 -8 -8 -7 -7 -6 -5 -4 -3 -3 -3 -2 -2 -1 -2 -3 -3 -3 -2 -1 -0 -2 -3 -4 -5 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -4 -4 -4 -3 -3 -2 -1 -1 -0 0 1 1 1 1 1 1 0 -0 -1 -1 -1 -1 -0 -0 1 2 4 5 6 7 8 10 11 12 13 13 14 14 14 14 14 14 15 16 16 15 13 11 8 5 1 -3 -6 -9 -11 -13 -15 -17 -18 -19 -21 -22 -24 -26 -28 -30 -31 -31 -31 -30 -28 -27 -26 -24 -23 -22 -21 -19 -16 -13 -11 -10 -9 -8 -6 -5 -3 -2 -0 1 2 3 4 5 6 8 9 10 11 12 12 11 11 12 14 17 20 22 24 24 23 22 22 22 23 24 25 26 28 28 29 29 31 32 32 31 30 29 28 29 29 30 31 33 34 35 35 36 36 37 38 38 39 39 40 40 40 40 39 38 37 37 36 35 34 33 33 33 34 34 35 36 36 37 38 39 39 40 41 42 44 45 44 41 38 40 47 52 54 52 49 46 43 41 -47 -47 -45 -44 -45 -49 -54 -59 -63 -66 -66 -66 -66 -68 -69 -71 -72 -73 -75 -78 -81 -82 -81 -79 -78 -77 -75 -74 -73 -72 -72 -74 -78 -82 -84 -85 -84 -83 -81 -81 -81 -82 -83 -82 -82 -81 -80 -78 -76 -75 -74 -74 -74 -74 -74 -74 -72 -69 -64 -59 -55 -52 -50 -47 -43 -39 -37 -35 -34 -34 -33 -33 -32 -31 -31 -31 -32 -34 -36 -36 -36 -35 -34 -34 -34 -35 -36 -37 -38 -38 -38 -36 -33 -29 -23 -21 -21 -21 -20 -19 -18 -18 -19 -19 -18 -17 -16 -17 -17 -18 -18 -18 -17 -16 -16 -16 -15 -14 -12 -9 -5 -2 -2 -3 -3 -2 0 1 0 -2 -3 -4 -4 -4 -4 -3 -3 -2 -1 0 0 -0 -1 -2 -2 -2 -2 -2 -3 -3 -4 -3 -2 -1 -1 -2 -2 -3 -2 -2 -1 0 0 -0 -2 -3 -4 -4 -4 -5 -5 -5 -4 -4 -4 -5 -6 -6 -7 -7 -8 -8 -8 -8 -7 -7 -7 -5 -4 -2 -1 -1 -1 -1 -1 -0 -1 -2 -3 -2 -1 1 1 0 -2 -3 -4 -3 -2 -1 -0 -0 -1 -1 -2 -2 -3 -3 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -4 -4 -3 -3 -2 -1 -1 0 0 1 1 2 2 2 2 2 1 0 -0 -1 -1 -1 -0 2 4 7 8 8 9 9 10 10 10 10 11 11 11 11 12 12 12 13 13 13 13 12 11 9 6 3 1 -2 -4 -7 -9 -11 -13 -15 -16 -17 -18 -20 -22 -24 -26 -28 -29 -28 -27 -26 -25 -24 -23 -22 -21 -19 -17 -14 -11 -8 -6 -5 -5 -5 -4 -3 -2 -1 -1 0 1 3 4 6 8 9 11 11 12 11 10 10 10 12 14 16 19 21 23 23 23 22 21 21 22 23 25 26 27 27 28 28 29 30 29 29 28 28 28 28 28 29 30 31 32 33 34 35 36 36 37 38 38 39 40 41 40 40 39 39 39 38 37 36 36 35 35 35 35 34 35 35 36 37 38 40 43 45 46 48 48 46 43 41 45 50 53 52 49 46 45 43 41 -49 -49 -48 -50 -54 -58 -61 -63 -65 -68 -70 -72 -73 -74 -75 -76 -77 -77 -76 -78 -79 -80 -80 -79 -77 -75 -72 -70 -70 -72 -73 -74 -78 -81 -84 -85 -85 -83 -82 -83 -83 -84 -83 -83 -82 -80 -79 -77 -76 -74 -73 -73 -73 -74 -75 -74 -72 -68 -63 -58 -54 -51 -49 -46 -43 -40 -37 -35 -34 -34 -34 -33 -31 -29 -28 -29 -32 -35 -36 -37 -36 -35 -34 -34 -34 -34 -35 -36 -36 -36 -37 -36 -34 -31 -25 -22 -21 -20 -19 -18 -18 -18 -18 -18 -16 -15 -15 -16 -17 -17 -17 -17 -16 -16 -16 -16 -16 -14 -12 -9 -6 -4 -5 -5 -3 -0 2 2 0 -1 -1 -1 -1 -2 -2 -2 -1 -0 1 1 1 0 -1 -2 -2 -2 -2 -3 -3 -3 -3 -2 -2 -2 -2 -3 -3 -3 -3 -2 -1 -1 -1 -1 -2 -3 -4 -5 -6 -6 -6 -6 -5 -5 -6 -7 -7 -8 -8 -8 -8 -7 -7 -7 -7 -7 -5 -4 -2 -1 -1 -1 -1 -1 -1 -2 -3 -4 -3 -1 1 3 2 0 -2 -2 -1 1 2 3 3 2 2 1 0 -0 -1 -1 -2 -3 -3 -3 -3 -3 -2 -1 -1 -1 -1 -1 -1 -2 -1 -1 -0 0 1 1 1 1 2 2 2 3 3 2 2 1 0 -0 -0 1 3 6 9 9 9 9 9 9 9 9 9 9 9 10 10 10 11 11 10 9 9 8 8 7 6 4 2 1 -1 -3 -5 -6 -8 -10 -11 -13 -14 -15 -17 -18 -20 -23 -25 -26 -26 -26 -25 -24 -24 -22 -21 -20 -18 -15 -12 -9 -6 -3 -2 -1 -1 -1 -2 -2 -2 -3 -2 -1 0 3 5 7 9 11 11 11 11 10 10 10 10 12 14 16 18 20 22 22 22 21 21 21 22 23 24 25 26 26 26 27 27 27 27 27 28 28 28 28 28 29 29 30 31 32 33 34 35 35 36 36 37 39 39 40 40 40 40 40 40 40 39 39 39 38 37 37 36 36 35 35 35 37 40 43 46 48 49 47 45 43 44 49 52 52 49 45 44 43 42 40 -52 -51 -52 -56 -62 -68 -70 -69 -68 -69 -73 -77 -78 -79 -80 -81 -81 -81 -80 -79 -79 -78 -77 -77 -75 -73 -70 -68 -68 -70 -72 -75 -78 -81 -84 -85 -85 -85 -84 -85 -85 -84 -82 -81 -80 -79 -78 -77 -76 -75 -74 -73 -73 -74 -74 -74 -71 -67 -61 -56 -53 -51 -49 -47 -44 -40 -37 -35 -35 -35 -35 -33 -30 -28 -27 -28 -32 -35 -36 -36 -36 -36 -35 -34 -34 -34 -34 -35 -34 -34 -34 -34 -33 -33 -28 -23 -20 -19 -17 -16 -17 -17 -17 -16 -15 -15 -15 -16 -17 -17 -16 -16 -16 -17 -17 -17 -16 -14 -12 -10 -8 -8 -8 -7 -3 -0 1 1 0 1 2 2 2 1 1 1 1 1 2 2 1 0 -1 -1 -2 -2 -2 -2 -2 -2 -2 -1 -1 -1 -2 -2 -3 -3 -3 -2 -2 -2 -2 -2 -3 -4 -5 -6 -7 -7 -7 -7 -6 -6 -7 -7 -8 -8 -8 -8 -8 -8 -7 -7 -7 -6 -4 -2 -2 -2 -3 -3 -4 -4 -4 -4 -5 -4 -1 2 4 5 3 1 1 2 4 6 6 6 5 5 4 4 4 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 1 1 1 2 2 3 4 4 3 3 2 2 1 2 3 5 7 9 9 8 8 8 9 10 10 9 9 10 10 11 11 10 10 8 6 6 5 5 5 4 2 1 -0 -2 -3 -4 -5 -6 -7 -8 -10 -11 -13 -15 -16 -18 -20 -22 -24 -24 -25 -25 -24 -23 -22 -20 -19 -17 -15 -12 -8 -5 -1 1 2 2 2 1 1 -0 -1 -2 -2 -2 -0 2 5 8 10 11 11 11 10 10 10 10 11 12 13 15 17 19 21 21 21 21 20 20 21 21 22 23 24 25 25 25 25 25 26 26 28 28 28 28 28 28 29 30 31 32 32 33 34 34 35 36 37 37 37 37 38 39 40 41 42 42 42 41 40 39 39 38 37 36 36 36 37 39 42 45 47 46 43 40 39 42 46 48 47 44 42 42 41 40 39 -54 -54 -55 -61 -68 -75 -77 -77 -72 -72 -75 -79 -82 -82 -83 -85 -85 -85 -83 -81 -79 -77 -75 -74 -72 -70 -68 -67 -67 -69 -72 -75 -78 -81 -84 -85 -86 -86 -86 -85 -84 -83 -81 -80 -78 -77 -76 -75 -75 -74 -74 -73 -73 -73 -73 -72 -69 -65 -60 -56 -53 -52 -50 -48 -44 -39 -36 -36 -36 -37 -36 -34 -30 -28 -28 -30 -32 -33 -34 -35 -36 -36 -36 -36 -36 -35 -33 -33 -33 -32 -32 -31 -31 -31 -29 -23 -18 -16 -15 -16 -17 -17 -16 -15 -15 -15 -15 -16 -17 -16 -16 -16 -17 -18 -18 -17 -16 -14 -13 -12 -11 -11 -10 -7 -4 -2 -1 -0 1 3 5 5 5 5 4 3 3 3 2 2 1 0 -0 -1 -1 -1 -1 -1 -1 -1 -1 -0 -0 -1 -1 -1 -2 -2 -3 -3 -2 -2 -2 -3 -3 -4 -6 -7 -7 -7 -7 -7 -7 -7 -8 -8 -8 -9 -9 -9 -9 -9 -8 -7 -6 -5 -4 -3 -4 -5 -6 -6 -5 -5 -6 -6 -4 -1 3 6 7 6 5 4 6 8 9 10 9 8 7 7 7 7 6 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 6 6 5 5 4 3 3 2 2 2 3 4 5 5 5 4 4 3 3 4 5 6 7 8 8 7 7 8 10 11 12 12 12 12 12 12 12 11 9 7 5 4 4 4 3 3 2 1 0 -0 -1 -1 -2 -3 -4 -5 -7 -8 -10 -12 -14 -16 -18 -20 -21 -23 -24 -24 -24 -22 -21 -19 -18 -16 -14 -11 -7 -4 -1 2 4 5 5 5 4 3 2 0 -0 -1 -0 1 4 6 8 10 10 10 10 10 10 11 11 11 12 13 15 16 18 20 21 21 20 19 19 19 20 21 22 23 23 24 24 24 24 25 27 27 27 27 27 27 28 28 29 30 30 31 32 33 33 34 35 34 34 34 34 36 38 40 42 44 45 44 41 40 40 40 39 38 38 38 39 40 41 42 43 41 37 33 33 35 38 39 39 39 39 40 39 38 37 -56 -57 -60 -66 -74 -80 -84 -83 -78 -75 -77 -81 -84 -85 -86 -88 -88 -87 -83 -80 -78 -77 -75 -73 -70 -66 -64 -65 -67 -69 -72 -75 -78 -81 -84 -85 -86 -86 -86 -85 -84 -83 -81 -79 -77 -76 -74 -73 -73 -73 -72 -72 -72 -72 -72 -70 -67 -63 -59 -55 -54 -53 -51 -48 -43 -38 -36 -36 -38 -39 -38 -35 -32 -31 -31 -32 -32 -32 -32 -33 -35 -37 -37 -38 -38 -35 -31 -30 -31 -32 -33 -32 -30 -30 -28 -21 -15 -14 -14 -15 -16 -16 -15 -14 -14 -15 -16 -16 -17 -16 -16 -16 -18 -18 -18 -17 -15 -15 -15 -14 -13 -12 -10 -7 -4 -3 -2 -0 2 5 6 7 7 7 7 6 5 4 3 2 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 -0 -1 -1 -2 -1 -1 -1 -2 -2 -3 -5 -6 -6 -7 -7 -7 -7 -8 -8 -9 -9 -9 -9 -10 -10 -10 -10 -9 -7 -6 -5 -5 -6 -7 -7 -7 -6 -5 -5 -5 -3 0 5 8 9 9 8 7 9 11 13 13 12 10 9 8 8 8 8 9 9 10 10 11 11 11 11 11 10 10 10 10 10 10 10 10 9 9 8 7 6 5 4 3 3 3 4 6 7 7 7 6 6 5 5 5 6 7 8 8 8 8 8 10 12 13 14 14 14 13 14 13 12 11 8 6 5 4 3 3 2 2 2 1 1 1 2 2 2 2 0 -1 -3 -5 -7 -10 -13 -15 -17 -18 -20 -22 -23 -23 -23 -21 -20 -18 -16 -13 -11 -8 -5 -2 0 3 5 6 7 7 7 6 5 3 2 2 2 2 4 6 7 8 9 8 9 10 11 12 12 12 12 13 14 15 17 19 20 20 20 19 19 19 19 19 19 20 22 23 23 24 24 25 26 26 26 26 27 27 27 27 27 28 29 30 31 32 32 33 33 33 32 31 31 32 34 36 39 43 46 46 44 43 42 41 40 40 40 41 41 40 39 39 38 35 30 26 25 27 29 31 34 36 36 36 35 35 35 -58 -61 -66 -72 -79 -85 -90 -89 -83 -78 -79 -83 -87 -88 -88 -90 -90 -89 -85 -80 -78 -76 -75 -73 -69 -65 -62 -63 -66 -69 -71 -75 -79 -82 -84 -86 -87 -87 -86 -85 -83 -82 -81 -78 -76 -74 -72 -71 -71 -71 -71 -71 -71 -71 -70 -68 -65 -62 -58 -55 -55 -54 -52 -48 -43 -38 -37 -38 -39 -39 -38 -35 -34 -33 -33 -33 -32 -31 -30 -32 -34 -37 -38 -38 -37 -33 -30 -28 -29 -31 -33 -33 -31 -29 -26 -19 -14 -12 -14 -16 -16 -15 -14 -14 -14 -15 -16 -17 -17 -16 -16 -17 -18 -19 -18 -17 -16 -16 -16 -15 -14 -12 -9 -7 -5 -3 -1 1 4 6 7 8 9 9 9 8 7 6 5 4 3 3 2 2 2 2 2 2 2 2 3 2 2 2 1 1 1 0 1 1 0 -0 -1 -2 -3 -4 -5 -6 -6 -7 -8 -8 -9 -9 -9 -9 -10 -10 -11 -11 -11 -10 -9 -8 -7 -7 -8 -8 -8 -7 -6 -5 -4 -4 -2 1 5 9 10 10 9 9 11 13 15 15 14 12 10 9 9 9 9 9 10 11 12 12 13 13 13 13 12 12 12 12 12 12 12 12 11 11 10 9 8 7 6 5 4 4 4 6 7 9 9 9 9 7 6 6 6 6 7 8 9 9 10 12 13 14 14 13 12 12 12 13 12 12 10 8 6 4 3 2 1 0 0 0 1 1 2 3 5 5 4 3 2 1 -1 -4 -7 -11 -14 -16 -18 -20 -21 -22 -22 -21 -20 -19 -16 -13 -10 -7 -5 -3 -1 2 4 6 7 8 8 8 7 6 6 5 4 4 5 5 7 7 7 7 7 7 9 10 12 13 14 14 15 16 17 18 19 20 21 21 20 20 19 18 18 18 18 20 21 23 24 25 25 25 25 25 25 26 26 26 26 26 26 27 28 29 30 31 32 32 31 31 30 30 30 31 32 34 39 43 46 46 45 43 42 41 41 41 41 40 38 37 36 35 31 27 23 21 22 25 28 32 33 32 31 30 30 32 -61 -63 -71 -78 -84 -90 -94 -94 -87 -82 -81 -85 -90 -92 -91 -90 -91 -91 -88 -82 -77 -74 -73 -71 -68 -65 -62 -62 -65 -69 -71 -75 -79 -82 -85 -86 -86 -86 -84 -83 -82 -81 -80 -78 -75 -73 -71 -71 -70 -70 -70 -70 -70 -69 -68 -66 -63 -60 -57 -56 -56 -55 -53 -48 -43 -40 -39 -40 -40 -40 -38 -36 -35 -36 -36 -35 -33 -30 -30 -31 -34 -36 -37 -36 -34 -31 -29 -29 -30 -32 -33 -33 -30 -26 -24 -19 -14 -12 -14 -16 -15 -14 -13 -13 -14 -15 -16 -17 -16 -16 -17 -18 -19 -19 -18 -17 -16 -16 -16 -15 -13 -11 -9 -7 -5 -3 -0 2 5 6 8 9 10 10 10 10 9 8 7 6 5 4 4 4 3 3 3 3 3 4 3 3 3 3 3 2 2 3 3 2 1 0 -1 -2 -2 -3 -4 -5 -6 -8 -9 -10 -10 -10 -9 -9 -10 -11 -11 -11 -10 -9 -8 -8 -8 -9 -10 -9 -7 -5 -4 -4 -4 -3 -0 3 7 9 9 9 9 11 13 15 15 14 13 11 10 10 10 10 10 10 11 12 12 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 11 10 9 7 6 6 5 5 6 7 9 11 11 11 10 8 6 5 5 7 8 9 11 12 14 15 15 14 12 10 9 9 10 11 11 10 9 7 5 2 0 -2 -3 -3 -2 -2 -1 -0 2 4 5 5 4 4 4 3 1 -2 -5 -9 -12 -15 -17 -19 -20 -20 -20 -20 -20 -17 -14 -10 -7 -5 -3 -2 -0 2 5 7 8 9 9 9 8 8 7 7 7 7 7 7 7 8 7 7 6 6 7 9 10 12 14 16 17 19 20 21 22 23 23 23 22 21 20 19 18 18 18 18 20 22 23 24 25 25 25 25 25 25 25 26 26 25 25 25 26 27 28 29 30 30 30 30 30 30 30 29 29 31 34 37 41 43 43 43 42 41 41 41 40 37 35 34 33 32 30 27 25 24 24 26 29 31 30 29 27 26 27 30 -64 -65 -72 -81 -88 -93 -97 -97 -90 -84 -83 -87 -92 -94 -92 -92 -93 -93 -90 -84 -78 -73 -71 -69 -67 -64 -62 -63 -66 -70 -72 -75 -79 -82 -84 -86 -86 -85 -83 -82 -81 -80 -79 -77 -74 -73 -71 -71 -70 -70 -70 -69 -68 -68 -67 -65 -62 -60 -58 -57 -57 -56 -53 -49 -44 -42 -42 -42 -42 -40 -38 -37 -37 -37 -37 -36 -34 -31 -31 -32 -33 -35 -35 -33 -31 -29 -29 -30 -31 -33 -33 -31 -27 -24 -22 -20 -15 -13 -14 -16 -14 -13 -12 -13 -14 -16 -17 -17 -16 -16 -17 -19 -19 -19 -17 -17 -17 -16 -15 -13 -11 -9 -8 -7 -5 -2 0 3 5 7 8 9 10 10 11 11 11 10 9 8 7 7 6 5 5 4 4 4 4 4 4 4 4 4 3 3 3 4 4 3 2 1 0 -1 -1 -2 -4 -5 -7 -9 -10 -10 -10 -9 -9 -9 -10 -10 -10 -9 -8 -8 -8 -9 -10 -10 -9 -7 -5 -3 -3 -4 -4 -3 0 4 7 8 8 8 10 11 13 14 14 13 12 11 10 10 10 11 11 11 12 12 13 13 13 13 14 14 15 15 14 14 14 14 14 14 13 13 12 11 9 8 7 6 6 6 7 9 11 12 13 12 10 7 5 5 6 8 10 11 13 15 16 16 15 12 9 8 7 7 8 9 9 9 7 5 2 -1 -4 -5 -6 -6 -6 -5 -4 -2 1 3 4 3 3 3 4 4 3 -0 -4 -7 -11 -13 -16 -17 -18 -19 -19 -19 -19 -16 -12 -8 -5 -4 -3 -2 -0 2 4 6 8 9 10 10 9 9 9 9 9 9 9 8 8 8 7 7 7 6 7 7 9 10 12 15 17 19 21 23 24 25 26 26 25 24 23 21 19 18 18 18 19 20 21 23 24 24 24 24 24 24 24 25 25 24 24 24 24 25 26 27 28 28 28 29 29 29 29 29 28 29 30 32 34 36 37 39 40 40 39 38 36 33 31 31 31 31 30 29 29 29 30 31 31 30 28 26 25 25 27 32 -68 -66 -72 -82 -90 -95 -98 -98 -90 -84 -84 -88 -91 -93 -92 -92 -94 -94 -92 -87 -81 -75 -71 -68 -66 -63 -62 -63 -67 -71 -73 -75 -78 -81 -84 -85 -84 -83 -82 -81 -79 -78 -77 -75 -74 -73 -72 -71 -71 -71 -70 -69 -68 -67 -66 -64 -62 -60 -58 -58 -58 -56 -53 -49 -45 -44 -44 -43 -42 -40 -38 -37 -37 -37 -37 -36 -34 -32 -32 -33 -34 -34 -34 -32 -30 -29 -30 -31 -32 -32 -30 -28 -26 -23 -22 -21 -18 -15 -14 -14 -13 -12 -12 -13 -14 -16 -17 -16 -16 -16 -18 -19 -19 -18 -17 -17 -17 -16 -14 -12 -10 -8 -8 -7 -5 -3 0 4 6 8 9 10 10 11 11 12 13 12 12 11 10 9 8 7 6 5 5 4 4 4 4 4 4 4 3 3 4 4 4 3 2 2 1 1 -0 -2 -4 -6 -7 -9 -9 -9 -8 -7 -8 -8 -9 -9 -8 -7 -7 -7 -9 -10 -10 -9 -6 -4 -2 -2 -4 -6 -5 -3 0 4 5 6 7 9 10 12 13 14 14 13 12 11 11 12 12 13 12 12 13 13 13 13 14 14 15 16 16 16 15 15 15 15 15 15 15 14 13 12 11 10 9 8 7 7 8 9 11 12 12 11 8 5 4 5 7 10 12 13 15 16 16 15 13 10 9 7 7 7 7 7 7 7 6 3 0 -3 -6 -8 -9 -9 -9 -7 -5 -3 0 2 2 2 2 4 5 5 4 1 -3 -7 -10 -12 -14 -16 -17 -18 -18 -18 -17 -14 -11 -8 -6 -5 -3 -2 -0 2 3 5 7 9 10 11 11 10 11 11 12 11 10 9 8 8 8 8 8 7 7 7 7 8 10 12 14 17 20 22 24 26 27 28 28 27 25 23 21 19 19 19 18 18 19 20 22 23 24 23 23 23 23 23 23 23 23 22 23 23 24 24 25 26 26 26 27 28 28 28 28 28 29 30 30 30 30 32 34 36 36 33 30 28 29 29 30 30 30 30 30 31 31 30 29 28 26 25 25 27 32 37 -75 -71 -74 -84 -93 -98 -100 -98 -90 -82 -83 -87 -90 -92 -91 -92 -94 -95 -92 -87 -83 -78 -72 -68 -65 -63 -61 -63 -67 -72 -74 -76 -78 -81 -82 -83 -82 -81 -80 -79 -78 -76 -75 -74 -73 -72 -72 -72 -72 -71 -70 -69 -67 -66 -65 -64 -62 -61 -59 -59 -58 -56 -52 -49 -46 -45 -44 -44 -43 -41 -38 -37 -37 -37 -37 -36 -34 -34 -33 -34 -34 -34 -33 -31 -31 -30 -30 -31 -30 -29 -27 -26 -25 -24 -24 -24 -21 -17 -14 -13 -12 -12 -12 -13 -15 -16 -16 -16 -15 -16 -18 -18 -17 -17 -16 -16 -16 -14 -12 -10 -9 -8 -8 -8 -6 -3 0 4 6 7 9 10 11 11 12 13 14 14 14 14 13 12 11 9 8 7 6 5 5 5 5 4 4 3 3 3 4 4 4 3 3 3 3 2 1 -1 -3 -5 -7 -7 -7 -7 -6 -7 -7 -8 -7 -6 -5 -5 -7 -8 -9 -10 -9 -7 -4 -2 -2 -3 -6 -7 -6 -3 0 3 4 5 7 9 11 12 13 13 14 13 13 13 13 15 15 15 15 14 14 14 14 14 14 15 16 17 16 15 15 15 15 15 16 16 16 16 15 14 13 12 11 9 9 8 9 9 10 11 11 9 7 5 5 7 9 11 12 13 14 15 14 13 12 11 10 9 8 7 7 6 6 6 5 3 0 -3 -6 -8 -10 -10 -9 -8 -5 -3 -1 1 1 2 3 5 7 6 4 1 -3 -6 -9 -12 -14 -16 -17 -18 -18 -17 -15 -13 -11 -9 -7 -5 -4 -2 -0 2 4 5 7 10 12 13 13 13 13 14 14 13 12 10 9 9 9 9 9 8 7 7 7 7 8 10 12 14 17 19 22 24 26 27 28 28 27 25 23 21 20 19 18 18 17 18 20 21 22 22 21 21 21 22 22 22 21 21 21 21 21 22 23 23 23 24 24 25 25 26 26 28 29 30 29 29 27 26 27 29 29 27 25 24 27 29 30 30 31 31 30 29 28 27 27 26 26 27 28 32 38 43 -82 -80 -81 -89 -96 -100 -100 -97 -89 -82 -81 -83 -87 -89 -91 -92 -94 -94 -92 -87 -84 -81 -76 -71 -66 -63 -61 -62 -66 -72 -75 -76 -78 -80 -81 -81 -80 -79 -78 -78 -77 -75 -75 -74 -73 -72 -72 -72 -72 -72 -71 -69 -68 -66 -66 -65 -63 -62 -60 -59 -58 -55 -51 -48 -46 -45 -45 -44 -43 -41 -39 -37 -37 -36 -36 -35 -34 -34 -34 -34 -34 -34 -33 -33 -32 -32 -31 -30 -28 -26 -25 -25 -26 -26 -25 -26 -24 -19 -13 -12 -12 -12 -12 -13 -15 -16 -15 -15 -15 -16 -17 -16 -16 -15 -15 -15 -15 -13 -11 -10 -9 -9 -9 -9 -7 -4 -0 3 5 6 8 10 11 12 12 13 15 16 16 16 16 15 13 12 10 8 7 6 5 5 4 4 3 3 3 4 4 4 3 3 3 4 4 3 1 -0 -2 -4 -5 -6 -5 -5 -6 -7 -8 -7 -6 -5 -5 -6 -8 -10 -11 -10 -9 -5 -3 -2 -3 -6 -9 -8 -6 -3 -0 1 3 5 8 9 11 12 13 14 14 14 14 15 17 18 19 18 17 16 15 15 15 15 15 16 16 16 15 15 14 14 15 16 16 17 18 18 18 17 16 14 13 12 11 10 9 9 10 10 9 9 7 6 7 8 10 10 11 12 13 12 12 12 13 14 13 12 10 8 7 7 6 6 5 3 1 -2 -5 -7 -9 -9 -8 -6 -4 -2 -1 -0 0 2 4 6 7 7 5 1 -2 -6 -9 -12 -14 -16 -17 -18 -17 -16 -15 -13 -11 -9 -7 -5 -3 -1 1 3 6 8 10 12 14 16 16 16 17 17 17 16 14 13 12 11 10 10 10 9 8 7 6 6 7 8 10 13 15 18 20 22 24 25 26 27 27 26 24 23 22 21 19 18 17 17 17 18 19 19 19 19 20 20 20 20 20 19 19 19 19 19 20 21 21 21 21 21 22 23 24 26 28 29 29 29 28 26 24 23 21 20 19 22 26 29 31 32 33 32 31 29 28 27 27 28 28 30 33 38 43 46 -89 -88 -89 -94 -98 -100 -100 -97 -92 -85 -81 -81 -83 -86 -89 -91 -93 -94 -92 -87 -83 -82 -79 -75 -68 -63 -60 -60 -65 -70 -74 -75 -77 -78 -78 -78 -78 -77 -77 -76 -76 -75 -74 -74 -72 -72 -72 -72 -73 -72 -71 -70 -68 -67 -66 -66 -65 -63 -61 -59 -57 -54 -50 -47 -45 -45 -44 -44 -43 -41 -39 -37 -36 -36 -35 -35 -34 -34 -33 -33 -34 -34 -34 -33 -33 -32 -31 -29 -27 -26 -25 -26 -27 -27 -26 -25 -23 -19 -13 -12 -12 -12 -13 -14 -15 -15 -15 -15 -15 -16 -16 -15 -14 -14 -14 -14 -13 -12 -10 -9 -9 -9 -10 -9 -7 -3 0 2 3 4 6 8 10 11 12 13 14 16 17 17 17 17 15 14 12 10 8 7 6 5 4 3 3 3 3 3 3 3 3 3 3 4 4 3 2 0 -1 -3 -3 -3 -3 -4 -6 -7 -8 -7 -6 -5 -5 -7 -9 -11 -12 -11 -9 -6 -4 -4 -6 -8 -9 -7 -5 -2 -1 0 2 5 7 9 10 12 13 14 14 15 15 17 19 21 21 20 18 17 17 16 16 15 15 15 16 15 15 15 15 15 16 16 17 19 20 20 20 20 18 17 16 14 13 12 11 10 10 10 10 9 9 8 8 9 9 9 10 11 12 12 13 15 16 17 17 15 13 10 9 8 7 6 5 4 2 -0 -3 -5 -7 -6 -5 -3 -1 -1 -0 0 1 3 5 6 7 6 4 1 -2 -6 -9 -11 -14 -15 -17 -17 -17 -16 -14 -12 -11 -8 -6 -5 -3 -0 3 6 9 11 13 16 18 19 20 21 21 21 21 20 18 16 15 14 13 12 11 10 9 8 7 6 6 7 9 12 15 18 20 22 23 24 25 25 26 26 25 24 23 22 20 19 17 16 16 16 16 17 17 18 18 18 18 18 18 18 18 17 17 17 18 19 19 20 20 19 19 20 21 23 24 26 27 29 29 28 26 23 19 17 18 23 28 31 33 35 35 34 32 31 30 30 31 32 33 35 38 41 44 44 -93 -94 -95 -97 -100 -100 -99 -97 -95 -91 -85 -81 -80 -82 -87 -90 -92 -93 -92 -89 -82 -81 -80 -78 -72 -64 -59 -58 -61 -66 -70 -71 -73 -75 -76 -77 -77 -77 -76 -75 -74 -74 -74 -74 -73 -72 -72 -72 -73 -72 -71 -69 -68 -67 -66 -66 -65 -63 -62 -60 -57 -53 -49 -47 -45 -45 -45 -44 -43 -41 -39 -38 -37 -36 -35 -35 -34 -32 -32 -32 -33 -33 -33 -33 -33 -32 -31 -29 -27 -26 -25 -26 -27 -27 -25 -23 -22 -19 -14 -11 -11 -12 -13 -14 -15 -15 -14 -15 -15 -15 -14 -13 -12 -12 -12 -12 -12 -10 -9 -9 -9 -9 -9 -8 -5 -2 -0 -0 -0 1 4 7 8 9 10 11 12 14 16 17 17 17 17 15 14 12 10 8 6 5 3 3 3 3 3 3 2 2 2 3 4 4 4 4 3 1 0 -0 -0 -0 -1 -3 -6 -8 -8 -7 -5 -5 -6 -8 -10 -12 -13 -12 -9 -7 -6 -7 -8 -9 -8 -5 -3 -2 -2 -1 1 3 5 7 9 11 12 13 14 14 16 18 21 22 22 21 20 19 18 17 16 15 15 15 15 16 16 16 16 17 17 18 19 20 21 22 22 22 21 19 18 16 15 14 13 12 11 11 11 11 11 10 9 8 8 9 10 11 12 14 16 18 19 19 18 16 14 12 10 9 8 7 6 4 2 0 -2 -3 -4 -3 -2 0 1 2 2 2 3 4 5 6 6 5 3 1 -2 -5 -8 -10 -12 -14 -15 -15 -15 -15 -13 -11 -9 -7 -5 -3 -1 2 6 10 12 14 17 19 21 23 24 25 25 25 25 24 22 20 18 16 15 14 13 11 9 8 7 6 6 6 8 12 15 17 20 21 23 24 25 25 25 25 25 24 24 23 21 20 18 17 15 15 14 15 16 16 16 17 17 17 17 17 17 17 16 16 16 16 18 19 19 18 18 18 19 19 20 22 24 27 29 30 29 27 24 21 21 24 28 31 34 36 36 35 33 32 32 33 33 35 37 39 41 41 41 39 -98 -97 -98 -98 -100 -100 -98 -95 -95 -95 -91 -85 -80 -78 -82 -87 -89 -90 -91 -90 -84 -78 -77 -77 -74 -67 -60 -56 -56 -60 -64 -67 -69 -72 -74 -74 -74 -73 -74 -74 -73 -73 -74 -73 -73 -72 -72 -73 -73 -72 -70 -69 -67 -66 -65 -65 -64 -64 -62 -60 -57 -53 -49 -46 -45 -45 -45 -44 -43 -42 -40 -38 -37 -37 -36 -34 -33 -31 -31 -31 -32 -32 -33 -33 -32 -32 -30 -29 -27 -25 -25 -26 -26 -26 -24 -21 -21 -20 -17 -12 -11 -12 -13 -14 -14 -14 -14 -15 -15 -14 -13 -12 -12 -12 -11 -11 -10 -9 -8 -8 -8 -8 -7 -5 -3 -1 -2 -3 -3 -0 3 5 7 7 7 8 10 11 13 14 15 16 16 15 15 13 11 9 7 5 4 3 3 3 3 2 1 1 2 2 3 4 4 3 3 3 2 2 3 2 0 -3 -6 -8 -7 -6 -5 -5 -7 -9 -11 -12 -13 -11 -10 -8 -8 -8 -9 -8 -6 -4 -3 -2 -2 -1 1 2 5 7 9 10 11 11 12 14 16 19 21 22 22 21 20 20 19 17 16 15 15 16 16 17 17 18 18 18 19 19 20 21 22 22 23 23 22 21 20 19 18 17 16 15 15 15 14 14 13 11 10 9 8 9 11 13 15 17 19 20 20 20 18 16 14 12 11 11 10 8 6 4 2 1 -1 -2 -2 -1 1 2 3 4 4 5 5 5 5 5 5 4 3 1 -1 -4 -6 -8 -10 -11 -12 -13 -13 -13 -11 -9 -6 -4 -2 -0 2 6 9 12 14 16 18 20 23 25 27 29 29 30 29 27 25 22 20 19 17 16 14 13 11 9 7 6 6 6 8 11 13 16 19 21 22 24 25 26 26 26 25 24 24 23 22 21 20 18 16 14 14 14 14 15 15 15 15 15 16 16 16 16 15 14 14 15 16 18 18 18 18 18 18 17 17 19 22 24 27 29 30 30 29 27 26 26 27 29 32 35 34 32 31 31 31 32 32 33 35 37 38 37 35 34 -104 -102 -100 -99 -100 -100 -97 -93 -91 -95 -95 -91 -83 -77 -77 -81 -84 -85 -86 -87 -85 -78 -74 -72 -71 -66 -59 -54 -53 -55 -60 -64 -67 -69 -70 -70 -70 -70 -71 -71 -72 -72 -73 -73 -72 -72 -72 -73 -72 -71 -69 -67 -66 -64 -64 -64 -64 -64 -63 -60 -56 -52 -49 -47 -46 -46 -46 -45 -44 -43 -41 -39 -38 -37 -36 -34 -32 -30 -30 -31 -32 -32 -32 -32 -32 -31 -29 -28 -26 -25 -25 -26 -26 -26 -23 -20 -19 -20 -19 -14 -12 -12 -13 -14 -14 -14 -14 -14 -14 -14 -13 -12 -11 -11 -11 -10 -9 -8 -7 -7 -6 -6 -5 -3 -2 -2 -3 -4 -3 0 3 5 5 4 5 6 7 8 9 10 11 12 13 14 14 12 10 8 7 5 4 3 3 2 2 1 1 1 1 1 2 2 3 3 4 4 5 5 5 4 1 -3 -5 -6 -6 -5 -5 -6 -8 -10 -12 -12 -11 -10 -9 -8 -8 -8 -8 -7 -4 -3 -2 -2 -1 -1 1 3 6 8 9 9 9 10 11 14 16 19 20 21 21 21 21 20 18 17 16 16 17 18 18 19 19 19 19 20 20 21 22 22 23 23 23 23 23 23 22 21 21 21 20 20 20 19 17 16 14 12 11 10 10 11 13 15 18 20 21 21 19 18 16 14 12 11 11 11 11 10 7 5 3 1 -0 -0 0 1 2 4 5 6 7 7 7 7 6 6 5 4 3 2 0 -2 -4 -6 -7 -8 -9 -10 -10 -10 -8 -6 -3 -1 1 3 6 9 11 12 14 15 18 20 23 26 29 31 32 33 32 30 27 25 22 21 19 17 16 14 13 11 9 8 7 8 9 10 12 14 17 19 21 23 24 26 26 27 26 25 24 23 22 22 20 19 17 15 14 14 14 14 14 14 14 14 14 14 15 15 15 13 13 13 15 17 17 17 18 18 18 18 19 21 22 23 25 27 30 32 32 31 29 28 27 28 30 32 30 28 26 25 26 27 28 28 29 30 31 31 30 31 -110 -108 -105 -103 -101 -99 -95 -90 -88 -94 -98 -98 -90 -80 -73 -75 -77 -78 -80 -82 -82 -76 -71 -68 -67 -64 -59 -55 -53 -54 -56 -60 -63 -65 -66 -66 -66 -66 -68 -69 -70 -71 -72 -72 -72 -72 -72 -72 -71 -70 -68 -66 -64 -62 -62 -63 -64 -64 -63 -60 -55 -51 -48 -47 -47 -47 -47 -47 -46 -44 -41 -39 -38 -37 -35 -33 -31 -31 -31 -32 -32 -32 -32 -31 -30 -29 -28 -26 -25 -25 -25 -26 -26 -25 -24 -21 -18 -18 -20 -18 -13 -12 -12 -13 -13 -14 -14 -14 -14 -13 -13 -12 -12 -11 -10 -9 -8 -7 -6 -6 -5 -4 -3 -2 -2 -3 -4 -4 -2 1 3 4 3 3 3 4 5 6 6 7 8 9 10 11 11 10 9 7 6 4 3 3 2 1 1 -0 -0 -0 -0 0 0 1 2 3 5 6 7 8 7 4 1 -2 -4 -4 -4 -5 -6 -8 -10 -10 -10 -10 -9 -9 -8 -8 -8 -7 -6 -4 -3 -2 -1 -1 -1 0 2 5 7 8 8 8 9 10 12 14 17 19 20 21 22 22 22 19 17 16 17 18 20 20 20 20 19 19 20 22 23 23 24 24 25 25 25 25 25 25 24 24 24 25 25 25 24 21 19 16 15 14 13 13 13 14 16 19 21 21 21 19 18 16 14 13 12 12 12 12 12 11 9 7 5 3 2 2 2 3 3 4 6 8 9 9 9 8 8 7 7 6 5 4 2 0 -2 -3 -4 -5 -7 -7 -7 -6 -4 -2 1 3 5 7 9 11 11 12 13 14 16 19 22 25 27 30 31 33 32 31 29 27 24 22 20 18 16 15 14 13 12 11 10 10 11 11 12 13 15 17 19 21 23 24 25 25 26 26 25 24 23 22 21 19 17 15 14 13 13 13 13 13 12 12 12 12 13 13 14 13 12 13 15 16 17 17 17 17 18 19 21 22 22 22 23 26 29 31 32 32 30 29 29 29 30 30 29 26 22 19 20 21 22 21 21 22 23 24 26 29 -113 -111 -108 -106 -103 -99 -93 -87 -85 -91 -98 -100 -96 -85 -72 -69 -71 -72 -74 -76 -78 -75 -70 -67 -66 -64 -60 -57 -55 -54 -54 -56 -58 -59 -60 -60 -61 -62 -64 -66 -68 -70 -71 -72 -71 -71 -71 -71 -70 -69 -67 -65 -62 -61 -60 -62 -63 -64 -63 -59 -54 -50 -48 -47 -47 -48 -49 -49 -47 -44 -41 -38 -38 -36 -35 -33 -32 -33 -33 -34 -33 -32 -31 -29 -28 -27 -26 -26 -25 -25 -26 -26 -26 -25 -24 -21 -18 -17 -19 -21 -16 -12 -12 -12 -13 -13 -13 -14 -13 -13 -13 -12 -12 -11 -10 -9 -9 -8 -6 -5 -4 -3 -2 -2 -3 -4 -4 -3 -0 2 3 3 2 2 3 3 4 4 4 4 5 6 7 8 9 8 8 6 5 4 3 2 1 0 -0 -1 -1 -1 -1 -1 -1 0 2 3 5 7 8 8 6 3 1 -1 -2 -2 -3 -5 -7 -9 -9 -9 -8 -7 -7 -6 -6 -6 -6 -5 -4 -2 -1 -1 -0 -0 0 2 4 6 7 8 7 8 9 10 13 15 18 20 21 22 23 23 21 18 17 18 20 21 22 22 21 20 20 21 22 24 26 26 27 27 28 28 29 29 29 28 28 28 28 29 29 28 25 22 20 18 18 17 17 17 17 19 21 22 22 21 20 18 17 16 15 15 14 14 14 14 14 13 11 10 8 6 4 4 4 4 4 5 7 9 10 11 10 10 10 10 10 9 8 6 5 3 1 -1 -2 -4 -5 -4 -3 -2 -0 2 4 6 8 9 11 11 11 11 12 13 15 17 19 22 24 26 28 29 30 30 29 28 26 23 21 19 18 17 16 15 14 14 13 13 13 13 13 14 15 17 18 20 21 22 22 23 24 24 25 25 24 23 21 19 17 15 13 12 12 12 12 12 12 12 12 11 11 11 11 11 12 12 14 15 15 15 16 16 17 19 20 20 21 21 23 25 27 30 31 31 30 30 30 30 30 31 30 29 26 23 20 19 19 19 17 17 18 20 24 29 -114 -111 -107 -105 -103 -97 -90 -84 -82 -88 -96 -101 -99 -91 -76 -68 -68 -69 -70 -72 -74 -75 -73 -72 -71 -69 -66 -62 -58 -56 -54 -53 -53 -54 -54 -55 -56 -58 -60 -63 -66 -68 -70 -70 -70 -69 -70 -70 -70 -68 -66 -63 -61 -59 -59 -61 -64 -64 -63 -58 -53 -49 -47 -47 -48 -50 -51 -50 -47 -43 -39 -37 -37 -36 -35 -34 -34 -34 -35 -34 -33 -31 -29 -28 -27 -26 -26 -26 -26 -27 -27 -27 -26 -25 -23 -21 -18 -16 -16 -21 -18 -14 -11 -12 -13 -13 -13 -13 -13 -13 -13 -12 -12 -11 -11 -10 -9 -8 -6 -5 -4 -3 -3 -3 -4 -4 -3 -1 1 3 3 3 3 3 3 4 4 4 3 3 4 5 6 7 7 7 7 6 4 3 2 1 0 -0 -1 -2 -2 -3 -3 -2 -1 -0 1 2 4 5 6 5 3 2 1 1 0 -1 -3 -6 -7 -7 -6 -5 -4 -4 -3 -3 -3 -3 -3 -2 -1 0 1 1 1 1 2 3 5 6 6 6 7 8 10 12 14 16 18 20 22 22 22 21 19 18 18 20 22 23 22 21 20 20 21 24 26 28 29 29 30 30 31 32 33 33 32 31 31 31 31 32 31 29 27 24 23 22 22 22 22 22 23 24 24 23 22 20 18 17 17 17 17 17 17 17 16 16 15 14 13 12 10 8 7 6 5 6 6 7 9 11 12 13 12 12 12 12 12 11 10 8 7 5 4 2 -0 -2 -1 -1 -0 1 3 6 7 8 10 11 11 10 10 10 10 12 13 15 17 18 20 22 24 25 26 27 28 27 26 24 22 20 19 19 18 17 16 16 15 15 15 15 15 15 16 17 18 19 20 20 21 21 22 22 23 23 23 23 22 19 16 13 11 10 10 10 10 11 11 11 11 11 10 10 10 10 10 11 12 12 13 14 14 15 15 16 16 17 18 19 21 23 25 27 29 30 30 30 31 31 31 32 33 33 33 31 28 27 25 23 22 20 20 22 26 31 -116 -112 -106 -101 -100 -97 -89 -82 -80 -86 -96 -99 -100 -96 -85 -75 -73 -73 -73 -73 -75 -78 -79 -80 -79 -77 -74 -69 -64 -60 -57 -53 -51 -51 -51 -52 -52 -54 -57 -60 -63 -66 -67 -68 -67 -68 -69 -70 -69 -67 -65 -62 -59 -59 -60 -62 -64 -64 -62 -57 -53 -50 -48 -48 -50 -51 -51 -49 -45 -41 -38 -37 -36 -36 -35 -35 -35 -35 -34 -33 -31 -30 -29 -27 -26 -26 -26 -27 -28 -28 -28 -27 -26 -23 -21 -19 -17 -15 -13 -16 -18 -15 -12 -11 -12 -12 -13 -13 -12 -12 -12 -12 -12 -12 -11 -11 -10 -8 -6 -5 -4 -4 -4 -4 -4 -3 -2 -0 1 2 3 3 4 4 4 4 4 4 4 4 4 5 6 7 8 8 7 6 5 3 2 1 -0 -1 -2 -3 -3 -4 -3 -3 -2 -1 -0 0 1 1 1 1 0 0 1 2 1 -1 -3 -5 -4 -3 -2 -1 -1 -0 0 0 0 0 1 2 2 3 3 3 3 3 3 4 4 4 5 6 8 10 12 14 15 17 19 20 21 21 19 18 16 17 19 21 22 21 20 19 20 22 24 27 29 30 30 30 31 32 34 35 35 35 34 34 33 33 33 33 32 31 29 28 28 28 27 28 28 28 28 27 26 24 21 20 18 18 19 19 20 20 20 19 18 17 16 16 15 13 12 10 9 8 7 8 9 10 11 14 15 16 15 14 13 13 13 13 12 10 8 7 6 4 3 2 2 2 2 4 6 7 8 9 11 11 10 9 9 9 10 11 12 13 14 15 17 19 20 22 24 25 26 26 25 24 23 22 21 20 20 19 18 17 17 16 16 16 16 17 17 18 18 19 20 20 21 21 21 21 22 22 22 22 22 21 18 13 9 7 6 7 8 9 10 11 11 11 10 9 9 8 9 9 10 10 11 11 12 12 12 12 12 12 14 16 18 20 22 23 25 28 29 30 30 30 31 31 33 35 36 35 34 33 33 32 31 29 28 28 30 33 -118 -113 -105 -96 -95 -95 -90 -83 -79 -85 -94 -98 -99 -98 -94 -88 -85 -84 -82 -80 -81 -84 -85 -86 -86 -85 -82 -77 -73 -68 -63 -58 -54 -51 -51 -50 -50 -50 -55 -58 -61 -63 -64 -64 -65 -66 -68 -68 -68 -67 -64 -61 -59 -60 -61 -63 -64 -63 -61 -56 -52 -50 -49 -50 -51 -52 -51 -47 -42 -39 -36 -36 -36 -36 -36 -35 -35 -33 -32 -31 -31 -30 -29 -28 -26 -27 -28 -29 -29 -29 -28 -27 -25 -22 -19 -18 -16 -14 -11 -11 -15 -15 -14 -12 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -10 -8 -7 -5 -5 -5 -5 -4 -4 -3 -2 -1 0 2 3 3 4 5 5 6 6 6 6 6 6 7 8 9 9 10 9 8 7 5 3 1 -0 -1 -2 -3 -4 -4 -3 -3 -2 -2 -2 -2 -2 -2 -3 -3 -2 -1 1 1 -0 -2 -2 -2 -1 1 1 1 2 3 3 3 3 4 4 4 4 4 5 5 4 3 3 2 1 2 3 6 10 12 14 15 16 16 18 19 18 17 15 13 14 16 19 20 20 19 18 19 21 24 27 28 29 28 28 28 29 31 32 33 34 34 34 35 35 35 35 34 34 34 34 34 34 33 33 33 33 32 30 28 26 23 21 20 19 20 21 21 22 22 21 19 18 17 16 15 14 13 12 11 10 10 10 10 11 13 14 17 19 19 18 16 15 15 16 16 14 11 9 7 7 6 6 6 5 5 5 6 7 7 9 10 11 11 9 8 8 9 10 11 12 12 13 14 15 17 19 21 22 24 24 25 24 24 23 23 22 22 22 21 20 19 18 17 17 17 17 18 18 18 18 19 20 20 21 21 22 22 22 21 21 21 20 20 18 17 10 4 2 2 3 5 7 8 9 9 9 8 8 8 8 9 9 9 9 9 9 9 9 8 7 8 9 12 14 16 18 20 22 25 27 29 29 29 29 30 32 34 36 35 34 34 35 35 36 35 35 35 35 36 -119 -115 -106 -93 -88 -92 -91 -84 -78 -81 -90 -96 -97 -98 -98 -97 -96 -95 -92 -89 -88 -90 -90 -89 -89 -88 -85 -82 -80 -76 -71 -65 -59 -55 -53 -51 -48 -47 -49 -53 -56 -59 -61 -62 -63 -64 -65 -67 -68 -66 -64 -62 -61 -61 -62 -63 -63 -62 -59 -56 -52 -51 -51 -51 -52 -52 -49 -44 -40 -37 -35 -36 -36 -36 -36 -34 -33 -31 -30 -30 -31 -31 -30 -28 -27 -27 -28 -29 -29 -28 -27 -25 -23 -20 -18 -15 -14 -13 -10 -9 -12 -15 -15 -12 -11 -11 -12 -11 -11 -11 -12 -12 -12 -13 -13 -12 -10 -8 -7 -6 -6 -6 -6 -4 -3 -2 -2 -1 -0 1 2 3 4 6 7 9 9 10 10 10 10 10 11 11 12 13 12 11 10 8 5 3 1 -1 -2 -3 -4 -3 -3 -2 -2 -3 -3 -4 -5 -5 -5 -4 -3 -1 -1 -1 -2 -2 -0 1 2 3 3 3 4 5 6 6 6 6 6 5 5 6 6 5 4 2 -0 -1 -1 1 4 8 12 14 15 15 14 14 16 15 14 12 10 11 13 16 17 18 17 16 17 19 22 25 27 26 25 25 25 26 27 28 29 30 31 32 33 34 35 35 35 36 37 37 38 38 38 38 37 36 34 32 30 27 25 23 21 21 21 22 22 23 22 21 20 18 17 16 15 14 12 11 11 11 12 13 13 13 14 15 17 20 22 22 20 18 17 18 19 19 16 12 9 7 8 9 10 10 8 7 7 7 7 7 9 10 11 10 9 8 8 9 10 11 12 12 13 13 15 16 18 20 22 23 23 24 24 24 23 23 23 23 23 22 22 20 19 18 18 18 18 18 17 17 17 18 19 20 21 22 22 23 23 22 22 21 20 19 18 17 12 4 -3 -5 -5 -3 -1 3 4 6 6 7 6 6 7 8 9 9 9 8 8 7 7 6 5 4 6 8 11 13 15 17 19 21 24 26 28 29 29 29 30 31 32 32 31 31 32 32 33 33 34 34 36 36 -119 -118 -109 -93 -83 -86 -89 -85 -78 -78 -86 -94 -98 -99 -99 -98 -97 -96 -94 -91 -90 -90 -89 -89 -88 -86 -83 -81 -80 -78 -75 -70 -64 -59 -57 -54 -49 -46 -47 -49 -53 -56 -58 -59 -60 -61 -64 -66 -66 -65 -64 -63 -62 -62 -62 -62 -62 -61 -58 -55 -53 -52 -51 -51 -51 -50 -46 -42 -38 -36 -35 -36 -36 -36 -35 -32 -30 -30 -30 -31 -32 -32 -30 -27 -26 -26 -27 -28 -27 -26 -24 -23 -21 -19 -16 -12 -11 -11 -10 -8 -10 -14 -15 -14 -12 -11 -11 -11 -11 -11 -12 -12 -13 -13 -13 -12 -10 -9 -8 -8 -8 -8 -6 -5 -3 -2 -1 -1 -1 0 2 3 5 7 9 11 12 13 13 13 13 14 14 15 15 16 15 14 13 11 9 6 3 1 -1 -3 -3 -3 -2 -2 -2 -3 -4 -4 -5 -5 -5 -4 -3 -2 -2 -3 -2 -0 2 3 4 3 3 4 6 7 8 8 8 7 6 6 6 7 6 4 2 -1 -3 -3 -1 3 7 10 13 13 13 12 11 12 13 11 9 7 7 10 13 15 15 15 15 15 17 20 23 25 24 22 22 22 23 24 25 26 27 28 29 30 32 33 34 35 35 36 37 38 39 39 40 39 38 36 33 30 28 26 24 23 22 23 23 24 23 23 21 20 18 17 16 15 14 12 10 10 10 12 14 16 16 16 16 17 20 22 24 23 21 20 21 22 23 21 18 13 9 8 9 12 14 13 11 10 9 8 7 8 10 11 11 10 8 8 9 10 11 11 11 12 13 14 15 16 18 19 21 22 22 22 22 22 22 22 22 22 23 23 23 22 21 20 19 19 18 17 17 16 16 16 17 18 19 21 22 22 23 23 23 22 22 21 19 17 14 9 3 0 -1 -2 -3 -5 -8 -1 2 4 4 4 5 7 8 8 8 8 8 8 7 6 5 3 3 5 8 11 13 15 16 18 20 23 25 27 28 28 28 28 28 28 28 28 27 27 27 28 28 29 30 31 -118 -120 -113 -98 -82 -82 -86 -85 -80 -77 -85 -95 -99 -100 -100 -99 -97 -94 -92 -89 -87 -87 -86 -86 -85 -83 -80 -78 -77 -75 -73 -70 -66 -62 -60 -56 -52 -47 -47 -48 -50 -52 -54 -55 -57 -60 -63 -65 -66 -65 -65 -64 -63 -62 -61 -61 -61 -60 -58 -55 -53 -53 -52 -51 -49 -47 -44 -40 -37 -36 -35 -36 -36 -35 -33 -31 -30 -30 -32 -33 -33 -31 -28 -26 -25 -25 -26 -25 -24 -23 -22 -21 -19 -17 -13 -9 -8 -8 -8 -9 -10 -13 -16 -16 -13 -11 -10 -10 -11 -11 -12 -12 -13 -13 -12 -11 -10 -9 -9 -10 -10 -9 -7 -5 -3 -2 -1 -1 -1 0 2 3 5 8 10 12 13 14 14 15 16 16 17 18 18 19 19 18 17 15 12 9 6 3 -0 -2 -2 -2 -1 -1 -2 -2 -3 -3 -3 -3 -3 -3 -2 -3 -3 -3 -1 1 3 4 4 3 3 5 7 9 10 10 9 8 7 7 7 7 5 3 -1 -3 -3 -1 2 6 9 11 12 11 9 9 9 10 9 7 5 5 7 11 13 13 13 13 14 16 19 21 23 22 20 19 19 21 22 23 24 24 25 26 27 29 30 31 32 32 33 33 34 35 36 37 38 37 36 33 31 28 27 25 24 24 24 25 25 24 23 21 20 18 17 17 16 15 13 12 11 11 12 15 18 20 20 19 18 19 22 24 24 24 23 22 23 24 24 22 19 14 12 11 13 16 17 16 13 11 10 9 8 10 11 11 11 9 9 9 10 12 12 12 11 12 13 14 15 16 17 19 20 21 21 21 21 21 20 20 21 21 22 23 23 23 22 21 20 20 19 17 16 15 15 15 15 17 18 19 20 21 22 23 23 23 23 22 21 19 17 15 12 9 6 5 3 2 1 2 3 2 2 3 4 5 6 7 8 8 8 9 9 8 6 4 3 3 5 7 10 12 14 15 17 18 20 23 26 27 27 26 26 26 26 25 24 24 23 22 22 23 24 26 -118 -121 -117 -105 -87 -81 -82 -84 -83 -83 -91 -99 -102 -101 -100 -99 -97 -95 -93 -89 -86 -85 -85 -84 -83 -81 -78 -74 -73 -72 -71 -69 -67 -64 -60 -57 -54 -50 -48 -47 -46 -47 -50 -52 -55 -60 -63 -65 -65 -66 -65 -64 -63 -62 -61 -61 -60 -59 -57 -55 -54 -53 -52 -50 -48 -45 -42 -40 -38 -37 -36 -36 -35 -33 -31 -30 -31 -33 -34 -34 -33 -30 -26 -24 -24 -24 -25 -24 -23 -21 -21 -20 -18 -13 -8 -6 -6 -7 -8 -9 -10 -12 -15 -17 -15 -11 -10 -10 -11 -12 -12 -13 -12 -12 -12 -11 -10 -10 -11 -11 -11 -10 -9 -6 -4 -3 -2 -2 -1 0 2 3 5 7 9 11 12 13 14 15 17 18 19 20 21 22 22 21 20 18 16 12 9 5 2 -0 -1 -1 -0 -0 -1 -1 -0 -0 -0 -0 -0 -1 -1 -2 -2 -1 0 2 3 3 3 2 3 5 8 10 10 10 9 8 7 7 6 5 3 1 -1 -2 -0 2 5 8 10 11 9 8 7 7 7 8 6 4 3 5 8 10 11 11 12 13 14 17 20 22 21 19 17 18 19 21 22 22 22 23 23 24 26 27 28 29 29 29 29 29 30 31 32 33 34 34 32 31 29 28 26 25 25 26 26 26 25 24 22 20 19 18 17 17 16 15 15 14 14 15 17 20 23 23 23 21 20 21 23 24 25 25 24 23 23 23 23 22 20 17 16 17 18 20 19 16 13 12 11 10 11 12 12 12 11 9 9 11 12 13 13 12 12 12 13 14 14 15 16 17 19 20 20 20 20 19 19 19 19 20 21 22 22 22 22 22 21 20 19 18 17 16 15 15 15 16 17 18 19 20 21 22 22 23 23 22 22 21 20 18 16 14 13 11 10 9 8 8 8 10 12 13 7 6 5 5 5 6 7 9 9 9 8 5 3 3 3 4 6 9 11 12 13 13 14 17 21 25 27 26 25 24 24 24 23 22 20 19 19 19 20 22 -117 -119 -116 -107 -90 -80 -78 -80 -84 -89 -95 -100 -102 -101 -100 -98 -97 -96 -94 -90 -87 -85 -85 -84 -81 -79 -76 -71 -69 -69 -69 -69 -69 -65 -61 -57 -55 -52 -49 -46 -44 -43 -46 -50 -55 -60 -63 -64 -64 -65 -64 -63 -61 -60 -60 -60 -59 -58 -57 -55 -55 -54 -51 -49 -46 -44 -42 -41 -39 -38 -37 -35 -33 -32 -32 -33 -34 -36 -36 -34 -31 -27 -25 -24 -25 -25 -25 -24 -23 -21 -20 -19 -16 -8 -5 -5 -6 -7 -8 -9 -11 -12 -14 -16 -18 -13 -11 -10 -11 -12 -13 -13 -12 -12 -11 -11 -11 -11 -12 -12 -12 -12 -10 -9 -7 -5 -4 -3 -2 -1 0 2 3 4 6 8 9 11 12 14 15 17 19 20 22 23 24 24 23 22 19 16 12 8 4 2 1 1 0 0 0 1 2 3 3 3 2 2 1 1 1 1 2 2 2 2 2 2 3 6 8 9 10 9 8 7 7 6 5 3 1 0 0 2 4 6 8 9 10 8 6 5 5 6 6 5 3 2 3 5 8 9 9 10 11 13 16 18 20 20 18 16 17 19 20 21 22 21 21 21 22 23 24 25 26 27 27 27 27 27 27 28 29 30 31 31 30 29 28 27 27 26 27 27 27 26 24 23 21 20 19 19 18 17 17 17 17 17 18 20 23 26 27 27 25 23 22 23 24 25 26 25 24 21 20 20 21 22 22 21 21 22 22 21 17 14 12 12 12 12 13 14 14 12 10 10 11 12 13 13 13 13 13 14 14 14 14 15 15 16 18 19 19 19 19 18 18 18 19 19 20 21 21 22 23 23 22 22 21 19 18 17 16 15 15 16 16 17 18 19 20 20 21 21 22 22 21 21 20 19 19 18 17 16 15 14 14 14 14 14 15 15 16 15 11 6 4 3 4 6 7 8 7 5 3 2 1 1 2 5 7 9 10 9 9 12 15 20 24 25 25 25 24 24 23 21 19 18 18 18 19 19 -116 -117 -114 -106 -92 -79 -75 -78 -83 -90 -97 -99 -100 -99 -98 -97 -95 -94 -93 -91 -88 -85 -84 -83 -81 -78 -75 -71 -67 -67 -69 -70 -71 -69 -64 -58 -54 -51 -49 -45 -42 -41 -43 -49 -56 -60 -62 -62 -62 -62 -61 -60 -60 -60 -60 -59 -57 -56 -56 -56 -55 -54 -51 -48 -45 -44 -43 -42 -41 -39 -37 -35 -34 -34 -35 -36 -37 -37 -34 -32 -29 -27 -26 -26 -26 -26 -26 -26 -24 -22 -20 -19 -15 -7 -6 -6 -7 -7 -8 -10 -13 -13 -14 -17 -20 -17 -14 -12 -12 -13 -13 -12 -12 -12 -12 -11 -12 -12 -13 -13 -13 -13 -12 -11 -10 -8 -7 -7 -6 -4 -3 -2 -1 -1 1 3 5 7 9 11 13 15 17 18 20 21 23 24 25 24 22 19 15 11 8 5 3 2 1 1 1 3 4 5 5 5 4 4 4 3 3 3 3 2 2 1 1 2 4 6 7 8 8 8 8 7 6 4 3 1 1 2 4 5 7 8 9 9 8 6 4 4 5 5 5 3 2 2 4 6 6 7 8 9 11 13 16 17 17 17 16 17 19 20 21 21 21 20 20 20 21 21 22 23 24 25 25 26 26 26 27 27 28 28 28 28 28 28 27 27 27 28 28 27 26 24 23 22 21 21 20 20 19 19 18 19 19 21 23 26 28 30 30 29 27 26 25 25 26 27 26 24 21 18 18 19 22 24 25 25 25 25 23 19 15 13 12 13 13 14 15 15 14 12 10 11 12 13 14 14 14 14 15 15 15 15 14 14 15 16 17 19 19 19 19 18 18 18 19 19 19 20 21 22 23 23 23 22 21 20 19 18 17 16 15 15 16 16 17 18 19 19 20 20 20 21 21 20 20 20 19 19 19 19 19 19 19 19 18 18 18 17 17 16 15 15 8 2 -1 -1 0 2 2 2 1 -0 -1 -1 -0 2 4 7 8 8 8 9 11 14 18 22 24 26 26 25 23 21 19 18 18 19 18 19 -117 -116 -113 -105 -92 -78 -73 -76 -82 -90 -96 -98 -98 -97 -97 -96 -94 -92 -91 -89 -87 -84 -82 -81 -79 -77 -75 -71 -66 -66 -68 -71 -72 -72 -68 -61 -53 -48 -45 -43 -42 -41 -43 -48 -54 -58 -59 -59 -59 -59 -59 -59 -60 -59 -58 -56 -55 -55 -56 -56 -56 -53 -50 -47 -45 -45 -45 -44 -42 -39 -38 -37 -37 -38 -39 -38 -37 -34 -32 -30 -28 -28 -28 -27 -27 -27 -27 -28 -26 -22 -19 -17 -14 -9 -8 -9 -9 -9 -10 -13 -16 -16 -15 -17 -22 -24 -20 -16 -13 -13 -13 -13 -12 -12 -12 -11 -12 -13 -13 -14 -14 -14 -14 -13 -12 -11 -11 -11 -10 -9 -8 -7 -6 -6 -5 -3 -1 2 4 6 9 11 13 14 15 17 19 22 25 26 25 22 18 14 11 8 6 4 3 2 3 4 5 6 6 6 6 6 6 6 5 4 3 2 1 1 1 2 4 6 6 7 7 7 7 6 4 3 2 2 3 4 6 8 9 10 10 8 6 4 4 4 5 4 3 1 1 3 4 5 5 6 7 9 10 12 14 14 14 14 15 17 19 20 20 20 20 20 19 19 20 20 21 22 23 24 25 25 26 26 27 27 27 27 27 27 27 26 26 27 27 27 27 25 24 23 22 22 22 22 21 20 20 20 20 20 22 24 27 30 32 33 32 31 29 28 28 28 28 28 26 22 19 17 18 20 24 26 28 28 27 25 21 17 15 14 13 13 14 15 16 15 14 12 12 12 13 13 14 14 15 15 16 16 15 15 15 15 15 16 17 18 19 19 19 19 19 19 19 18 19 19 20 21 22 22 22 22 20 19 18 17 16 15 15 14 14 15 16 17 18 19 19 19 20 20 20 20 20 20 20 20 20 20 21 21 22 22 22 21 20 19 18 17 16 14 11 6 -6 -13 -8 -7 -7 -7 -6 -6 -5 -4 -3 -1 2 5 7 9 9 9 9 10 13 18 22 25 26 25 23 21 19 18 18 18 18 18 -117 -116 -111 -103 -92 -78 -73 -75 -82 -89 -95 -97 -97 -96 -95 -94 -93 -90 -88 -87 -86 -83 -79 -77 -76 -76 -74 -70 -67 -67 -68 -70 -71 -71 -70 -65 -56 -48 -42 -43 -44 -44 -42 -43 -48 -52 -55 -56 -56 -57 -58 -59 -59 -57 -55 -54 -54 -55 -56 -56 -54 -51 -48 -46 -46 -46 -45 -43 -41 -39 -39 -40 -41 -41 -40 -38 -34 -32 -30 -30 -30 -30 -29 -28 -27 -28 -29 -29 -25 -21 -18 -16 -13 -10 -11 -12 -12 -12 -14 -18 -21 -20 -18 -18 -21 -27 -26 -20 -15 -13 -13 -13 -13 -12 -11 -11 -12 -13 -14 -15 -16 -16 -15 -14 -14 -14 -15 -14 -14 -13 -12 -12 -11 -11 -10 -8 -5 -2 0 2 4 6 7 9 10 12 15 18 22 25 25 23 20 17 14 11 9 6 5 4 5 6 6 7 7 7 7 8 8 8 7 6 4 3 2 1 2 3 4 5 6 6 6 6 6 5 4 3 4 4 5 6 8 9 10 10 9 7 5 4 5 5 4 2 1 1 2 3 4 4 4 5 7 8 10 11 11 11 11 12 14 16 17 18 18 18 19 19 19 19 20 20 21 22 23 24 25 26 26 27 27 27 27 27 27 26 26 26 26 26 26 25 24 23 23 23 23 23 23 22 22 21 21 20 21 21 24 26 29 32 34 34 34 33 32 31 31 30 30 28 25 22 20 20 21 23 26 28 28 27 25 22 19 17 16 15 15 14 15 16 16 15 14 14 14 14 13 13 14 15 16 16 17 16 16 15 15 15 15 16 16 17 17 18 18 19 19 19 19 18 18 18 18 19 19 20 19 19 18 18 17 16 15 14 14 13 13 13 14 15 16 18 18 19 20 20 20 21 21 21 21 22 22 22 23 23 24 24 23 23 22 22 21 20 18 17 14 11 8 4 0 -7 -12 -13 -12 -10 -10 -9 -7 -4 -1 2 6 8 9 9 8 9 12 16 20 24 25 24 22 20 18 17 17 17 17 17 -116 -114 -109 -100 -89 -78 -73 -75 -81 -89 -94 -96 -96 -96 -94 -93 -91 -89 -86 -85 -83 -81 -78 -74 -73 -73 -72 -69 -66 -66 -68 -70 -70 -71 -70 -67 -62 -54 -48 -48 -50 -50 -46 -41 -43 -48 -52 -53 -54 -56 -57 -57 -56 -55 -53 -53 -54 -54 -54 -53 -51 -49 -47 -46 -45 -45 -43 -41 -39 -39 -40 -42 -43 -42 -39 -36 -33 -31 -31 -32 -32 -31 -30 -28 -28 -28 -28 -27 -23 -20 -18 -16 -14 -12 -14 -16 -16 -16 -19 -23 -26 -25 -23 -21 -21 -27 -28 -24 -19 -15 -14 -13 -12 -12 -12 -12 -13 -14 -15 -16 -17 -17 -16 -16 -17 -17 -17 -17 -17 -16 -16 -15 -14 -14 -12 -10 -7 -5 -3 -2 -1 0 2 3 6 9 12 15 18 22 23 23 22 20 17 15 12 10 8 8 8 8 8 8 8 8 9 9 9 9 8 7 5 4 3 2 3 4 5 5 5 5 5 5 4 4 4 5 6 6 7 9 10 11 11 10 8 6 5 6 5 4 2 1 0 2 3 4 4 4 5 6 7 8 8 9 9 9 10 12 13 14 15 15 16 17 18 18 19 19 20 21 22 23 24 25 26 26 26 27 27 27 27 27 27 27 27 26 26 25 24 24 23 23 24 24 24 24 23 23 22 22 21 21 22 23 25 27 30 31 33 34 34 35 34 34 33 32 30 28 26 25 24 24 25 26 27 27 26 25 23 21 19 19 18 17 16 16 16 17 17 16 16 16 15 15 15 15 15 16 17 18 18 17 16 16 15 15 15 15 15 16 16 17 18 19 19 19 19 18 18 17 17 17 17 16 16 16 16 16 16 15 14 14 13 12 12 12 12 13 15 16 17 18 19 20 20 21 22 22 23 23 24 24 24 24 24 25 25 24 25 25 24 24 22 21 19 17 15 12 10 7 4 1 -2 -5 -8 -8 -7 -6 -5 -3 2 6 8 8 8 8 11 14 17 19 20 20 19 18 17 17 16 16 16 16 -114 -111 -104 -96 -87 -77 -73 -74 -80 -87 -93 -94 -94 -94 -92 -91 -89 -86 -84 -82 -81 -79 -77 -73 -71 -71 -71 -68 -66 -65 -67 -69 -70 -69 -68 -67 -64 -60 -57 -57 -59 -58 -51 -42 -40 -44 -48 -51 -52 -55 -55 -55 -53 -52 -50 -52 -53 -53 -52 -50 -48 -46 -45 -44 -43 -41 -39 -38 -38 -39 -40 -42 -42 -39 -37 -34 -33 -33 -34 -33 -32 -30 -27 -26 -26 -27 -26 -24 -21 -20 -19 -18 -17 -16 -18 -20 -20 -21 -24 -27 -29 -30 -29 -26 -23 -26 -27 -26 -23 -19 -15 -13 -13 -13 -13 -14 -14 -15 -16 -17 -18 -18 -18 -19 -19 -19 -19 -19 -19 -18 -17 -16 -16 -15 -13 -11 -9 -7 -6 -6 -5 -3 -2 -0 3 6 9 12 15 18 20 21 22 21 20 18 16 14 13 12 11 11 10 10 10 10 10 10 11 10 10 8 7 6 4 4 4 4 5 5 5 5 4 4 4 4 6 7 7 9 10 11 12 12 11 10 8 7 7 6 5 3 1 1 1 3 3 4 4 4 6 7 7 7 7 7 8 9 10 11 12 13 13 14 15 16 17 17 18 19 20 22 23 24 25 26 26 26 27 27 28 28 28 28 28 28 27 26 25 24 23 23 24 25 25 25 25 24 23 23 23 23 23 23 23 24 25 27 28 29 31 33 35 36 36 35 34 33 31 30 29 28 28 28 27 27 26 25 24 23 22 21 21 21 20 19 18 18 19 18 18 17 18 18 17 17 17 17 17 18 18 19 19 18 17 17 16 16 15 15 15 15 15 16 18 19 19 19 19 19 18 18 17 16 15 15 15 15 15 15 15 14 14 13 13 12 12 11 12 12 13 14 15 16 17 18 19 20 21 22 23 23 24 24 24 24 24 24 25 25 26 27 27 27 27 26 24 23 21 20 17 15 13 11 9 7 5 3 2 1 0 2 3 4 5 7 7 6 6 7 9 12 14 16 16 16 16 15 14 14 14 15 -111 -105 -97 -90 -84 -78 -75 -75 -79 -86 -91 -92 -92 -91 -91 -89 -86 -84 -81 -79 -78 -77 -76 -74 -71 -70 -70 -67 -64 -64 -66 -67 -68 -68 -66 -65 -63 -61 -61 -63 -64 -63 -56 -45 -38 -40 -44 -48 -50 -52 -51 -52 -51 -50 -49 -51 -52 -51 -49 -48 -46 -44 -42 -41 -39 -38 -36 -37 -37 -38 -39 -40 -38 -36 -34 -33 -33 -34 -34 -32 -29 -26 -23 -23 -23 -24 -24 -23 -22 -21 -21 -21 -21 -21 -22 -23 -24 -26 -28 -31 -32 -33 -33 -32 -28 -26 -26 -27 -27 -24 -17 -15 -14 -14 -15 -15 -16 -16 -17 -18 -19 -20 -21 -21 -21 -20 -20 -20 -19 -18 -17 -16 -15 -15 -13 -12 -10 -9 -8 -8 -6 -5 -4 -2 1 3 6 9 13 15 18 19 21 22 22 21 20 18 17 16 15 14 13 13 12 12 12 12 11 11 10 10 9 7 5 4 4 4 5 5 5 4 3 3 4 6 7 8 10 12 13 14 13 12 10 9 9 8 8 6 4 2 1 2 3 3 3 4 4 6 6 7 7 7 7 8 9 10 11 11 12 12 13 13 14 14 15 16 18 19 21 23 25 26 26 25 25 26 26 27 27 28 28 28 29 28 28 26 25 24 24 24 25 26 26 26 25 24 24 23 24 24 24 24 24 24 25 25 26 27 29 32 34 36 36 35 34 33 33 32 32 31 30 29 28 26 25 23 22 22 23 23 23 22 21 20 20 21 21 20 19 19 20 20 20 20 20 20 20 20 20 20 20 19 19 18 18 17 17 16 15 15 15 16 17 18 19 19 19 19 19 18 18 17 15 15 14 15 15 15 14 13 13 13 13 12 12 12 11 12 12 12 13 13 14 15 16 17 18 19 20 20 21 21 21 21 21 22 23 25 26 28 29 30 30 30 30 29 28 27 25 23 21 19 17 15 15 15 15 15 15 15 12 11 11 15 18 18 17 16 14 13 14 16 16 15 12 9 8 9 10 11 -107 -99 -90 -83 -79 -77 -78 -79 -82 -86 -90 -91 -89 -88 -88 -87 -85 -82 -79 -77 -76 -75 -75 -74 -72 -71 -69 -66 -63 -63 -64 -65 -66 -65 -64 -63 -61 -60 -61 -63 -64 -63 -58 -48 -38 -36 -39 -43 -47 -47 -48 -49 -50 -49 -49 -51 -50 -48 -47 -45 -44 -42 -40 -38 -37 -35 -35 -37 -37 -38 -37 -37 -35 -33 -32 -32 -33 -33 -31 -28 -24 -22 -20 -20 -21 -23 -23 -24 -23 -24 -24 -25 -26 -26 -26 -26 -27 -29 -31 -33 -34 -35 -36 -36 -33 -29 -26 -26 -28 -28 -21 -17 -16 -16 -17 -17 -18 -18 -19 -20 -21 -22 -22 -22 -22 -21 -20 -19 -18 -17 -16 -15 -15 -14 -13 -13 -11 -11 -10 -8 -7 -5 -4 -2 -0 2 4 7 10 13 15 17 19 21 22 22 21 21 20 19 18 17 16 15 14 14 13 12 11 11 11 11 9 7 5 4 4 4 4 4 4 3 2 4 6 8 10 11 14 15 16 15 12 11 10 10 10 9 8 6 3 2 2 3 3 3 3 4 5 6 6 6 7 7 8 9 10 11 12 12 12 13 13 13 13 14 15 16 17 19 21 24 25 25 25 25 25 25 25 26 26 27 28 28 28 28 27 26 25 25 25 26 26 26 26 26 25 25 24 24 25 26 26 25 24 24 23 24 24 26 29 31 33 34 34 34 34 34 34 34 33 31 30 28 26 25 23 22 22 23 24 24 23 23 22 22 23 23 22 21 21 22 23 23 23 23 22 22 22 22 21 21 21 21 20 20 20 19 19 18 17 16 16 16 16 17 18 19 19 19 19 18 18 17 16 15 15 14 14 13 13 12 12 12 12 12 12 12 11 11 11 11 11 11 12 13 13 14 14 15 15 16 16 16 16 17 18 19 20 22 24 26 28 29 31 32 33 33 33 32 31 29 28 26 25 24 24 24 24 24 24 23 22 21 20 21 22 23 22 22 23 24 24 23 19 15 10 6 5 5 6 7 -101 -95 -87 -79 -73 -72 -78 -82 -85 -87 -89 -89 -88 -87 -86 -86 -85 -82 -79 -76 -75 -73 -73 -72 -71 -69 -67 -64 -63 -61 -62 -63 -63 -62 -62 -61 -60 -60 -60 -61 -62 -61 -57 -50 -40 -35 -35 -38 -41 -44 -46 -47 -48 -49 -50 -50 -48 -47 -46 -44 -43 -41 -40 -37 -35 -34 -35 -36 -37 -36 -35 -35 -33 -32 -31 -32 -32 -31 -28 -25 -22 -21 -20 -21 -22 -23 -24 -25 -25 -26 -27 -28 -28 -28 -28 -29 -30 -32 -34 -36 -37 -38 -38 -38 -37 -33 -27 -25 -26 -29 -26 -22 -19 -18 -18 -19 -19 -20 -21 -21 -22 -22 -22 -22 -21 -20 -19 -18 -17 -16 -15 -15 -15 -14 -14 -13 -12 -11 -9 -8 -6 -4 -3 -2 -1 1 3 6 8 10 12 14 16 19 21 22 22 21 21 21 20 19 18 17 16 15 13 12 11 11 11 10 7 5 3 3 3 3 2 2 2 2 5 7 9 11 13 15 17 18 16 13 10 9 10 10 10 9 7 5 4 3 4 4 3 3 4 5 6 6 6 6 7 8 9 10 11 12 12 13 13 13 13 13 13 14 14 16 17 19 21 23 23 24 24 24 24 24 24 25 25 26 26 27 27 27 27 27 26 26 26 26 26 26 26 26 25 25 25 26 27 27 26 25 23 22 22 23 24 26 28 30 31 31 31 32 32 33 33 33 32 30 28 27 25 24 23 23 23 24 24 24 24 23 24 24 24 23 22 22 23 24 25 25 25 25 25 24 24 23 23 22 22 22 22 22 22 21 21 20 19 18 17 17 16 17 18 18 19 19 18 18 17 16 15 15 14 14 13 12 12 11 11 11 11 11 11 11 11 10 10 9 9 10 10 11 12 12 12 12 11 11 11 12 13 14 15 16 18 20 22 23 25 27 29 30 32 33 33 34 34 33 33 32 31 31 31 31 30 29 29 28 27 25 23 22 21 22 23 23 24 25 25 23 21 19 19 16 11 8 6 5 -94 -91 -85 -77 -69 -68 -76 -82 -86 -87 -88 -89 -88 -86 -85 -85 -84 -81 -78 -75 -73 -71 -70 -70 -69 -68 -65 -63 -62 -61 -61 -61 -61 -60 -59 -59 -59 -58 -58 -60 -61 -59 -56 -52 -46 -38 -34 -34 -37 -42 -44 -45 -46 -48 -49 -49 -48 -47 -45 -44 -43 -41 -39 -36 -33 -33 -35 -36 -36 -36 -35 -34 -33 -31 -31 -32 -32 -29 -27 -24 -22 -21 -21 -22 -24 -25 -26 -26 -26 -27 -28 -29 -30 -30 -30 -32 -34 -36 -38 -40 -40 -39 -38 -38 -38 -35 -28 -24 -23 -28 -31 -28 -24 -21 -21 -21 -22 -22 -22 -22 -22 -22 -22 -21 -21 -19 -18 -16 -15 -15 -15 -15 -15 -14 -14 -13 -12 -11 -9 -7 -5 -4 -3 -2 -0 1 3 5 6 7 8 10 13 16 18 20 20 21 21 21 20 20 19 18 16 15 13 12 11 11 10 8 5 3 2 2 3 1 -0 -0 2 7 10 12 14 15 16 18 19 17 14 11 9 10 11 11 10 9 7 5 5 5 5 4 4 5 6 7 6 5 6 7 7 8 9 10 11 12 13 14 14 14 14 13 14 14 15 16 17 18 19 20 20 21 22 23 24 24 24 24 24 25 25 26 26 26 27 27 27 26 26 26 26 26 25 25 25 26 27 28 28 27 25 23 21 21 21 22 23 25 27 27 27 28 28 29 30 30 31 30 30 29 27 26 25 24 24 24 24 24 24 24 24 24 25 25 24 23 22 23 24 25 26 26 26 26 26 25 25 24 24 23 23 23 23 23 23 23 22 22 21 20 19 18 17 17 17 18 18 18 18 17 16 15 15 14 14 13 13 12 12 11 11 10 10 10 10 10 10 9 9 8 8 8 8 9 9 10 10 10 9 9 9 9 10 11 13 14 16 18 20 22 24 25 26 27 28 29 30 32 33 34 35 35 35 35 35 34 33 32 31 30 28 27 25 23 22 23 23 23 23 24 24 24 23 23 25 26 23 17 10 7 -86 -84 -81 -75 -68 -65 -72 -79 -83 -85 -87 -88 -87 -86 -85 -83 -81 -79 -76 -74 -72 -70 -68 -68 -68 -66 -63 -61 -61 -60 -59 -59 -59 -57 -56 -56 -56 -56 -56 -58 -59 -57 -54 -53 -51 -45 -38 -34 -35 -39 -41 -44 -46 -48 -48 -48 -48 -47 -46 -45 -42 -39 -36 -34 -33 -34 -36 -36 -36 -35 -34 -34 -32 -32 -31 -32 -31 -28 -26 -24 -22 -22 -22 -24 -26 -27 -27 -27 -27 -28 -29 -30 -31 -31 -33 -35 -38 -40 -42 -44 -43 -40 -36 -35 -36 -35 -31 -25 -23 -26 -32 -33 -31 -27 -25 -24 -23 -23 -23 -22 -22 -21 -21 -21 -20 -18 -17 -15 -14 -14 -14 -14 -14 -13 -13 -12 -11 -10 -8 -7 -5 -4 -2 -1 -0 1 2 3 3 4 5 7 9 12 15 17 18 19 20 20 20 19 19 17 16 15 13 12 11 11 9 6 3 2 2 2 2 -1 -1 2 8 14 16 17 17 17 18 19 18 15 12 10 10 11 11 10 9 8 7 6 7 7 6 5 6 8 8 7 6 5 6 7 8 9 10 11 12 13 13 14 14 14 14 13 13 14 14 15 16 16 16 16 18 19 21 22 23 23 23 23 24 24 24 25 25 26 26 27 26 26 26 26 26 26 26 26 27 28 29 29 27 25 22 20 19 19 20 21 22 23 24 24 24 24 25 26 26 27 27 28 28 28 27 26 25 24 24 24 24 23 23 23 24 25 25 24 23 22 22 23 25 25 26 26 26 26 26 26 25 25 25 25 24 24 24 24 24 23 23 23 23 22 21 20 19 18 17 18 18 18 17 16 15 15 14 14 14 13 13 13 12 11 11 10 10 10 10 9 9 8 8 7 7 6 6 6 7 8 8 8 8 8 8 8 9 10 11 13 14 16 18 20 22 23 24 25 26 26 27 29 30 32 34 35 36 36 36 36 35 34 33 31 29 27 25 24 24 25 25 24 24 24 24 25 25 25 25 24 22 18 13 8 -80 -77 -75 -71 -66 -64 -70 -76 -80 -82 -84 -86 -86 -85 -83 -81 -79 -76 -74 -72 -70 -68 -66 -66 -65 -63 -62 -61 -61 -60 -59 -58 -56 -55 -54 -54 -54 -55 -56 -57 -57 -56 -53 -51 -51 -46 -39 -34 -33 -38 -42 -45 -47 -48 -47 -47 -47 -47 -45 -43 -41 -39 -36 -35 -35 -35 -36 -36 -35 -34 -33 -33 -32 -32 -32 -31 -30 -28 -26 -24 -23 -22 -23 -25 -26 -27 -27 -27 -28 -29 -30 -31 -32 -34 -37 -39 -42 -43 -45 -45 -42 -37 -33 -31 -35 -36 -34 -29 -25 -25 -30 -35 -36 -34 -30 -26 -24 -23 -22 -22 -21 -21 -20 -19 -18 -17 -15 -14 -13 -13 -12 -12 -12 -12 -11 -11 -10 -9 -7 -6 -4 -3 -2 -1 -1 -0 0 0 0 0 2 3 5 7 10 13 16 17 19 19 19 19 18 17 16 15 13 12 11 10 7 5 3 2 2 2 0 -1 2 9 16 20 20 18 18 17 17 17 16 14 12 11 11 11 10 9 8 7 8 8 8 7 7 7 9 10 9 7 6 7 8 8 9 10 10 11 12 13 13 14 14 13 13 13 13 13 14 14 14 14 14 15 17 18 20 21 22 23 23 23 23 24 24 24 25 26 26 26 26 26 26 26 27 27 28 28 29 29 29 27 25 23 20 19 18 18 19 19 21 21 22 22 22 22 22 22 23 23 24 25 26 26 26 25 23 23 22 22 22 22 22 23 24 24 24 23 22 22 23 24 24 25 25 25 25 25 25 25 25 25 25 25 25 25 24 24 24 24 23 23 24 24 23 22 21 19 18 18 17 17 17 16 15 15 14 14 14 14 14 13 13 12 11 11 11 10 10 9 8 8 7 7 6 5 5 5 5 6 6 6 6 6 7 7 7 8 9 10 12 14 16 18 20 22 23 24 25 26 26 27 29 30 32 34 35 36 36 37 36 35 34 33 31 29 28 27 28 28 28 26 25 24 24 25 26 26 25 23 21 20 17 12 -76 -73 -70 -67 -64 -63 -70 -76 -79 -80 -81 -83 -83 -82 -81 -79 -77 -74 -73 -72 -70 -67 -64 -64 -62 -61 -60 -60 -61 -60 -59 -57 -55 -54 -53 -53 -53 -54 -55 -57 -57 -55 -53 -51 -49 -45 -39 -35 -35 -39 -43 -45 -47 -47 -48 -47 -46 -44 -43 -41 -40 -38 -37 -37 -37 -37 -37 -36 -35 -33 -33 -32 -32 -32 -32 -31 -30 -28 -25 -24 -24 -24 -24 -26 -27 -27 -27 -28 -29 -30 -31 -33 -35 -38 -40 -43 -44 -44 -44 -44 -40 -34 -30 -29 -33 -36 -36 -32 -28 -27 -29 -35 -39 -38 -35 -29 -25 -23 -22 -21 -20 -19 -18 -17 -16 -14 -13 -12 -11 -10 -10 -10 -10 -10 -9 -8 -7 -6 -5 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -2 -1 0 2 3 6 10 13 15 17 18 18 18 17 17 16 15 14 12 11 9 6 5 4 3 2 1 -0 3 10 17 22 22 19 17 16 16 16 16 15 14 13 12 11 10 8 8 8 9 9 9 8 7 7 9 11 10 8 7 7 8 9 10 10 11 11 12 13 13 13 13 13 13 13 13 13 14 14 13 13 13 14 15 16 18 19 20 21 22 23 23 23 24 24 24 25 26 26 27 27 27 28 28 29 29 30 30 30 29 27 25 23 21 19 18 18 18 18 19 20 21 21 21 21 20 20 19 20 21 22 23 24 24 23 22 22 21 20 20 20 21 22 23 23 23 22 21 22 22 23 23 24 24 23 23 23 23 23 24 24 25 25 26 26 25 25 24 24 24 23 23 24 24 24 24 23 21 20 18 17 17 17 16 16 15 14 14 14 14 14 14 13 12 12 11 11 11 10 9 9 8 7 6 6 6 5 5 5 5 5 5 5 5 6 6 6 6 7 7 9 11 13 15 18 20 22 24 25 26 27 28 29 30 31 33 34 35 36 37 37 36 35 34 33 32 31 30 30 30 30 28 25 24 24 25 27 26 25 23 22 21 21 21 -77 -73 -70 -67 -64 -65 -70 -76 -78 -79 -80 -81 -82 -82 -80 -78 -75 -73 -71 -71 -69 -67 -64 -63 -62 -62 -61 -61 -61 -60 -58 -57 -55 -54 -53 -54 -53 -53 -53 -55 -55 -54 -52 -50 -48 -45 -41 -39 -38 -41 -43 -46 -47 -48 -48 -46 -44 -43 -42 -41 -40 -39 -38 -38 -38 -38 -37 -36 -34 -33 -32 -31 -31 -32 -33 -32 -30 -27 -25 -25 -25 -25 -26 -27 -27 -28 -28 -28 -30 -31 -33 -36 -38 -41 -43 -44 -44 -43 -42 -42 -38 -33 -29 -28 -31 -33 -36 -34 -31 -30 -31 -34 -38 -39 -37 -33 -27 -23 -21 -20 -19 -18 -16 -14 -13 -12 -11 -10 -9 -8 -8 -8 -8 -7 -6 -6 -5 -4 -4 -4 -4 -4 -5 -5 -5 -5 -5 -6 -5 -4 -2 -1 -0 1 5 8 11 13 14 16 16 16 16 16 16 15 14 12 10 8 7 6 5 3 1 -0 3 12 19 23 23 20 17 15 15 15 16 16 16 15 14 12 9 8 8 9 9 9 9 7 7 7 8 10 9 8 7 7 9 10 11 11 11 12 13 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 14 15 16 17 18 20 21 22 23 23 24 24 24 24 25 26 27 28 29 30 30 30 31 31 31 31 30 28 25 23 21 20 19 19 19 19 20 20 21 22 22 21 20 18 18 17 18 19 20 20 21 20 20 20 20 20 20 19 20 21 22 22 22 21 21 21 22 23 23 23 23 23 22 22 22 22 22 22 23 24 24 25 26 26 25 25 24 24 23 23 23 24 24 24 24 23 21 19 18 17 17 16 16 15 15 14 14 14 14 14 13 12 12 11 11 11 10 10 9 9 8 7 7 6 6 5 5 5 4 4 4 5 5 6 6 6 6 6 7 8 10 12 15 18 21 23 25 26 27 28 29 30 31 32 33 35 36 37 37 37 36 35 35 34 33 33 32 32 31 29 27 25 25 25 26 26 25 24 23 23 24 24 -84 -76 -74 -74 -73 -71 -71 -73 -74 -75 -77 -79 -80 -80 -79 -76 -74 -72 -70 -69 -68 -67 -65 -65 -64 -63 -63 -62 -60 -59 -58 -57 -56 -55 -55 -55 -54 -53 -53 -54 -54 -53 -52 -50 -47 -46 -44 -44 -44 -44 -44 -46 -47 -48 -47 -46 -46 -45 -44 -43 -41 -40 -39 -39 -39 -38 -37 -36 -34 -33 -32 -32 -32 -34 -34 -32 -30 -27 -26 -25 -26 -27 -28 -28 -28 -29 -29 -30 -32 -34 -37 -40 -42 -44 -44 -44 -43 -41 -40 -40 -37 -33 -30 -29 -30 -32 -34 -35 -34 -34 -34 -34 -35 -37 -36 -34 -29 -25 -22 -20 -18 -16 -14 -12 -11 -10 -9 -8 -7 -7 -6 -6 -6 -5 -4 -4 -3 -3 -4 -5 -6 -6 -7 -7 -7 -7 -7 -7 -6 -4 -3 -2 -0 2 5 7 10 11 12 13 13 14 14 15 15 15 13 11 9 8 7 6 5 2 0 2 12 21 25 25 21 16 14 14 14 15 16 17 16 15 12 9 8 8 9 10 10 9 7 6 6 7 8 8 7 6 7 9 11 11 11 11 12 13 13 13 13 13 13 13 13 13 14 15 15 16 16 15 15 15 14 15 15 16 18 19 21 22 23 24 24 24 24 25 26 27 29 31 31 32 32 32 32 32 31 30 28 26 24 22 21 20 20 20 20 21 22 22 23 23 22 21 19 17 16 16 17 17 18 18 18 17 18 18 19 20 20 20 20 20 21 21 21 21 21 22 22 23 23 23 23 22 22 21 21 21 21 21 21 22 23 24 25 25 25 25 24 24 24 23 23 23 23 24 24 23 22 21 19 18 17 16 16 16 15 15 14 14 14 14 13 12 11 11 11 10 11 10 10 10 9 8 8 7 7 6 6 5 5 5 5 5 6 6 6 6 6 6 7 7 9 10 13 15 18 21 24 26 27 28 29 30 31 31 33 34 35 36 37 37 36 36 35 35 35 35 35 34 33 31 28 26 25 26 26 26 25 24 24 25 26 26 -96 -83 -78 -79 -79 -76 -74 -73 -73 -72 -72 -75 -77 -78 -77 -75 -73 -71 -68 -67 -67 -67 -66 -65 -65 -64 -63 -62 -60 -59 -59 -58 -58 -57 -57 -56 -55 -54 -53 -53 -54 -53 -52 -50 -47 -47 -48 -48 -48 -46 -45 -47 -48 -48 -48 -49 -49 -48 -46 -44 -42 -41 -41 -40 -40 -39 -38 -36 -34 -33 -33 -34 -35 -36 -34 -32 -29 -26 -26 -26 -27 -28 -29 -30 -30 -30 -32 -33 -36 -39 -42 -44 -45 -45 -44 -42 -41 -40 -39 -39 -38 -35 -33 -33 -34 -34 -35 -36 -36 -38 -37 -36 -35 -34 -32 -30 -30 -28 -24 -21 -17 -15 -12 -10 -9 -8 -7 -6 -6 -5 -5 -4 -4 -3 -3 -3 -3 -3 -4 -5 -6 -7 -8 -7 -7 -7 -7 -6 -5 -3 -2 -1 1 3 5 7 8 10 10 11 11 12 13 14 15 14 12 11 9 8 8 6 4 2 4 12 22 27 26 22 17 15 14 14 15 16 17 17 16 13 10 7 8 9 10 10 9 7 6 6 6 6 6 5 5 6 7 10 10 10 10 10 11 12 12 12 12 12 12 12 12 13 14 15 16 17 17 16 16 15 14 14 14 16 17 19 21 23 24 25 25 25 25 25 26 28 30 31 32 33 33 32 32 31 29 28 26 25 24 23 22 22 22 22 23 23 24 24 24 24 22 21 19 17 16 16 17 17 17 16 16 16 16 18 19 20 20 20 20 20 20 20 20 21 21 22 22 23 23 23 23 23 22 22 21 21 21 21 21 21 22 22 23 24 24 25 24 24 24 23 23 22 22 23 23 24 23 22 20 19 17 17 16 16 15 15 15 15 14 14 13 13 12 11 10 10 10 10 10 10 10 9 9 8 8 7 7 6 6 5 5 6 7 7 8 8 8 8 8 8 9 10 12 14 16 19 22 24 26 28 29 30 31 31 32 32 33 34 35 36 36 35 35 35 36 36 37 37 36 33 30 27 26 26 26 25 25 25 25 26 27 27 -100 -86 -76 -75 -77 -77 -75 -75 -74 -73 -71 -71 -73 -74 -75 -73 -71 -69 -67 -66 -65 -65 -65 -65 -65 -64 -63 -61 -60 -59 -59 -59 -58 -58 -58 -57 -57 -56 -55 -54 -54 -54 -53 -51 -49 -49 -51 -52 -51 -48 -48 -50 -50 -50 -50 -51 -51 -49 -46 -44 -42 -42 -41 -40 -38 -38 -38 -36 -34 -33 -34 -37 -38 -37 -34 -31 -29 -27 -27 -27 -29 -30 -31 -31 -32 -33 -35 -38 -42 -45 -46 -47 -46 -45 -43 -42 -41 -40 -40 -40 -39 -37 -36 -37 -39 -38 -38 -38 -40 -41 -40 -39 -37 -34 -29 -26 -29 -29 -27 -22 -17 -15 -12 -9 -7 -5 -5 -4 -4 -4 -3 -2 -2 -2 -2 -2 -2 -2 -4 -5 -6 -6 -7 -7 -7 -7 -6 -4 -3 -2 -1 0 2 3 5 6 7 8 9 9 9 10 12 13 14 14 13 12 11 11 9 7 5 7 13 23 28 27 23 19 17 16 16 16 16 16 17 16 13 9 7 7 10 11 11 9 6 5 5 5 5 5 4 3 4 5 7 9 8 8 8 9 10 10 9 9 9 9 10 10 11 13 14 15 16 17 17 16 16 15 14 14 14 15 17 18 20 22 23 25 25 25 25 25 26 27 28 30 30 31 31 31 30 29 28 27 26 25 25 24 24 25 25 25 25 26 26 25 25 23 22 20 19 17 17 17 17 17 16 15 15 15 16 18 19 20 20 20 19 19 19 20 20 21 21 22 22 23 24 24 24 23 23 23 22 22 21 21 20 20 21 21 22 23 23 24 24 24 24 23 23 22 22 22 22 23 23 23 21 20 19 17 17 16 16 16 15 15 15 15 14 13 13 12 11 11 10 10 10 10 10 9 9 8 8 7 7 6 6 6 6 7 7 8 9 10 10 10 10 10 10 11 11 13 15 18 21 23 26 28 30 31 31 32 32 32 33 33 34 34 34 34 35 35 36 37 38 39 38 36 32 29 27 27 26 25 24 24 24 25 26 27 -99 -87 -74 -68 -69 -72 -74 -75 -75 -74 -72 -71 -71 -71 -72 -71 -69 -67 -65 -64 -63 -63 -63 -64 -64 -63 -62 -61 -60 -59 -59 -59 -58 -58 -58 -58 -58 -57 -57 -55 -54 -54 -53 -53 -51 -52 -54 -54 -53 -50 -51 -53 -53 -52 -51 -51 -51 -49 -46 -44 -43 -41 -40 -38 -38 -37 -37 -36 -35 -35 -37 -40 -40 -37 -34 -31 -29 -28 -28 -29 -30 -31 -32 -32 -34 -36 -39 -43 -47 -48 -48 -47 -46 -45 -43 -42 -41 -40 -40 -40 -41 -41 -41 -44 -45 -44 -42 -42 -43 -42 -40 -40 -39 -37 -32 -28 -28 -28 -26 -21 -18 -17 -12 -8 -5 -3 -2 -2 -2 -1 -1 -0 -0 -1 -1 -0 -0 -1 -1 -2 -3 -5 -6 -7 -6 -5 -4 -2 -1 -0 1 1 2 3 4 5 6 7 8 8 9 11 12 14 15 15 16 16 15 13 11 9 11 16 24 29 28 25 22 19 18 17 17 16 15 15 14 12 8 7 7 10 12 11 9 6 4 5 5 5 4 3 2 2 3 5 6 6 5 5 6 7 7 7 6 6 6 6 7 8 9 11 12 13 14 15 15 15 14 14 14 14 15 15 16 17 19 21 22 23 24 24 24 24 24 25 25 26 28 29 29 30 29 28 28 27 27 26 26 26 27 27 27 27 27 27 26 25 24 22 21 19 18 18 17 17 17 17 16 15 15 16 17 18 18 19 19 19 19 19 19 20 20 20 21 21 22 23 23 24 24 24 23 23 23 22 22 21 21 20 20 20 20 21 22 23 23 23 23 23 23 22 22 21 21 21 22 22 22 21 20 19 17 17 16 16 16 16 16 16 15 14 14 13 12 11 11 10 10 10 9 9 8 7 7 7 6 6 5 5 6 7 8 9 10 11 11 12 12 12 12 12 12 12 14 16 18 22 25 27 29 31 32 33 33 33 33 34 34 34 34 34 35 35 36 37 39 40 39 37 34 32 30 29 28 26 25 24 24 26 27 27 -97 -88 -75 -65 -62 -65 -70 -73 -74 -74 -73 -71 -70 -69 -69 -68 -66 -64 -63 -62 -61 -62 -62 -64 -64 -63 -61 -60 -60 -59 -58 -58 -58 -59 -59 -59 -59 -59 -59 -57 -55 -55 -54 -54 -53 -55 -56 -55 -54 -52 -53 -55 -55 -53 -51 -51 -51 -50 -48 -46 -43 -42 -40 -39 -38 -37 -37 -36 -36 -38 -41 -44 -41 -37 -34 -32 -31 -30 -30 -31 -31 -32 -32 -33 -36 -39 -44 -48 -50 -50 -49 -48 -47 -45 -43 -41 -40 -39 -40 -42 -43 -44 -45 -47 -48 -47 -45 -44 -43 -42 -39 -39 -39 -38 -35 -29 -25 -22 -19 -17 -18 -19 -16 -10 -5 -2 -0 0 0 1 1 2 1 1 0 0 1 1 0 -1 -2 -4 -6 -6 -5 -3 -2 -0 0 1 1 2 2 2 3 5 6 8 9 10 11 12 14 15 17 19 20 20 18 16 14 16 20 26 30 30 27 23 21 20 20 18 16 15 14 13 11 9 7 8 10 12 11 8 5 4 4 4 4 3 2 1 1 2 3 4 4 3 3 4 4 5 4 3 3 3 3 4 5 6 7 9 10 10 11 11 12 12 12 13 13 14 15 15 16 16 17 18 19 21 21 22 22 22 22 21 22 23 25 26 28 28 29 28 28 28 28 27 27 28 28 28 27 27 27 26 25 24 23 21 20 19 18 18 18 17 17 17 16 16 16 16 16 17 17 18 19 19 20 20 20 20 20 20 21 21 21 22 22 22 23 23 23 23 23 22 22 21 21 20 19 19 19 19 20 21 22 22 22 22 23 22 22 21 20 21 21 22 22 22 21 20 19 18 17 17 16 16 16 16 16 16 15 14 13 12 11 10 10 9 9 8 7 6 6 5 5 4 3 3 4 6 7 8 10 11 12 12 12 12 12 12 12 12 13 14 16 18 21 24 27 30 32 34 35 35 36 36 36 36 35 35 35 36 36 37 38 39 39 38 36 34 33 33 31 29 28 26 27 28 29 29 -94 -89 -80 -68 -60 -60 -66 -70 -72 -72 -71 -70 -69 -68 -66 -64 -62 -62 -62 -61 -61 -61 -62 -64 -64 -62 -60 -60 -59 -57 -57 -58 -59 -60 -61 -61 -61 -61 -60 -60 -58 -57 -55 -55 -55 -57 -56 -55 -55 -55 -55 -55 -55 -54 -53 -54 -54 -53 -50 -47 -45 -43 -41 -40 -39 -38 -37 -37 -39 -42 -45 -45 -40 -36 -34 -34 -33 -33 -32 -32 -33 -33 -34 -36 -39 -44 -48 -50 -51 -50 -49 -48 -47 -45 -42 -40 -39 -40 -42 -44 -46 -46 -47 -47 -47 -46 -44 -43 -42 -40 -37 -36 -36 -36 -35 -30 -23 -17 -13 -12 -14 -18 -17 -14 -9 -4 -1 1 2 3 3 4 3 1 0 -0 -0 -0 -1 -2 -3 -4 -5 -4 -3 -2 -1 0 1 1 1 1 1 2 4 6 7 9 11 13 14 15 17 19 22 24 24 23 21 19 21 25 29 32 31 28 25 23 22 21 20 17 15 13 12 11 9 8 8 10 11 11 8 5 3 3 3 3 1 0 0 0 1 2 2 3 2 2 2 3 3 2 1 0 -0 0 1 2 3 4 5 6 7 7 8 8 8 9 10 11 12 13 13 14 14 15 15 16 16 17 18 18 18 19 18 18 19 20 22 24 26 27 28 28 28 28 27 27 27 27 27 26 26 25 24 24 23 23 22 21 20 19 18 18 18 17 17 17 16 16 15 15 15 15 16 17 18 18 19 19 20 20 20 20 21 21 20 20 20 21 21 21 22 22 22 21 21 21 20 20 19 18 18 18 18 19 19 20 20 21 21 22 21 21 20 20 21 22 22 23 22 21 20 19 18 17 17 17 17 17 17 16 16 15 14 12 11 10 10 9 8 8 7 6 5 4 3 2 1 1 2 3 5 7 8 10 11 11 12 12 12 12 12 12 13 14 15 16 18 21 24 27 30 32 35 37 38 38 39 38 38 37 37 37 38 38 38 38 38 37 36 36 36 36 36 34 32 31 31 31 32 32 -92 -89 -85 -75 -64 -58 -62 -68 -69 -69 -68 -66 -66 -66 -64 -62 -60 -60 -60 -60 -60 -60 -62 -63 -63 -61 -60 -59 -59 -57 -56 -57 -59 -61 -62 -62 -61 -61 -61 -61 -61 -59 -58 -56 -56 -57 -57 -55 -55 -56 -56 -55 -54 -53 -53 -54 -55 -54 -52 -49 -46 -44 -43 -41 -40 -39 -39 -41 -43 -46 -47 -44 -39 -36 -35 -35 -35 -35 -35 -34 -35 -35 -36 -39 -44 -48 -51 -51 -51 -50 -49 -48 -46 -44 -41 -40 -40 -42 -44 -46 -47 -47 -46 -45 -44 -42 -41 -40 -39 -38 -34 -34 -33 -33 -33 -30 -23 -15 -10 -9 -11 -13 -14 -14 -12 -8 -4 -1 2 4 5 5 4 2 1 -1 -1 -1 -2 -2 -3 -3 -3 -3 -2 -2 -1 -0 0 1 1 1 2 3 5 7 9 12 14 16 17 19 21 24 27 27 26 24 24 26 30 32 33 32 30 27 25 24 23 22 19 16 13 12 11 9 8 8 9 10 10 7 4 3 3 2 1 -0 -1 -1 -1 -0 0 1 1 2 1 1 2 1 0 -1 -2 -2 -2 -2 -1 -0 1 2 3 3 4 4 4 5 5 6 7 9 10 11 11 12 13 13 13 13 13 13 14 14 15 15 15 16 16 17 19 21 24 25 26 26 26 26 26 26 25 25 25 24 23 22 21 21 21 21 21 20 20 19 18 18 18 17 17 16 16 15 15 14 14 15 15 16 16 17 18 18 19 20 20 20 20 20 20 19 19 19 19 19 20 20 20 20 19 19 19 19 18 18 17 16 16 16 16 17 18 19 20 20 21 20 20 20 20 21 22 22 22 22 21 20 19 18 17 17 17 17 17 17 16 15 14 13 12 11 10 9 8 8 7 6 4 3 2 1 -1 -1 -1 0 2 4 5 7 8 9 10 10 11 11 12 13 13 14 15 16 18 19 21 24 27 30 33 37 39 41 41 41 41 40 40 40 40 40 40 39 38 38 38 38 39 40 40 39 38 37 36 36 36 35 -93 -90 -88 -82 -70 -59 -58 -63 -65 -66 -65 -63 -63 -64 -64 -62 -60 -59 -59 -58 -58 -59 -59 -61 -61 -59 -57 -57 -56 -55 -54 -56 -58 -60 -61 -61 -61 -61 -61 -61 -61 -61 -60 -59 -57 -57 -56 -55 -55 -56 -56 -54 -53 -53 -53 -54 -55 -54 -53 -50 -47 -46 -44 -42 -42 -41 -42 -44 -47 -47 -46 -41 -37 -36 -36 -36 -37 -37 -37 -37 -37 -38 -40 -44 -48 -51 -51 -50 -49 -49 -48 -46 -44 -42 -40 -40 -42 -44 -46 -47 -46 -44 -43 -41 -40 -38 -37 -36 -35 -34 -32 -32 -31 -31 -31 -29 -24 -15 -8 -7 -8 -8 -8 -8 -9 -9 -7 -4 -1 1 4 5 5 4 2 0 -0 -1 -1 -2 -2 -2 -2 -2 -2 -2 -1 -1 -0 0 1 2 3 4 6 9 12 15 18 20 21 23 26 29 30 28 26 26 29 32 34 34 32 30 28 26 26 25 23 21 17 14 12 11 10 9 8 9 9 8 6 4 3 2 2 1 -1 -2 -3 -2 -2 -1 -1 0 1 1 1 1 0 -1 -2 -3 -3 -4 -3 -3 -2 -2 -1 0 1 1 1 2 2 2 3 4 5 6 7 8 9 10 10 10 10 10 10 10 10 10 11 12 12 13 13 14 16 18 20 22 23 23 23 23 23 23 23 23 22 21 21 20 19 19 19 20 20 19 19 19 18 18 18 17 16 16 15 14 14 14 14 14 14 14 15 15 16 17 18 19 20 20 20 20 19 18 18 18 18 18 18 18 18 18 18 17 17 17 17 17 16 15 14 14 14 14 15 16 18 19 19 19 19 19 19 19 20 21 21 21 21 20 19 18 18 17 17 17 17 17 16 15 14 13 12 11 10 9 9 8 7 6 5 3 2 0 -1 -2 -2 -2 -1 1 2 4 5 7 8 8 9 10 11 12 14 15 16 17 18 19 20 22 24 27 31 35 39 41 42 43 42 42 42 42 42 42 42 41 40 40 40 41 42 43 43 44 43 42 41 40 39 38 -93 -91 -88 -85 -75 -63 -56 -60 -62 -62 -62 -61 -61 -62 -62 -61 -60 -59 -58 -57 -57 -57 -57 -58 -58 -56 -54 -53 -53 -52 -52 -54 -57 -59 -59 -59 -60 -60 -60 -60 -62 -62 -62 -60 -58 -57 -56 -56 -55 -55 -55 -54 -53 -53 -52 -52 -53 -53 -52 -50 -48 -46 -44 -43 -43 -43 -45 -47 -47 -45 -42 -38 -36 -36 -36 -37 -38 -38 -38 -38 -39 -41 -44 -48 -51 -52 -50 -48 -48 -47 -47 -45 -43 -41 -40 -42 -44 -45 -46 -45 -43 -40 -39 -37 -35 -34 -33 -32 -31 -29 -29 -30 -30 -30 -30 -28 -24 -14 -7 -6 -6 -5 -3 -1 -1 -3 -4 -5 -6 -4 -1 1 5 6 4 3 2 1 1 0 0 -0 -1 -1 -1 -1 -1 -1 -0 0 1 2 4 5 7 11 15 19 22 23 25 27 29 31 29 27 28 30 32 34 33 31 29 28 27 26 26 25 22 18 14 12 11 10 9 8 8 8 7 6 4 3 2 2 0 -2 -3 -4 -4 -3 -3 -3 -2 -1 -0 0 0 -1 -2 -3 -4 -5 -5 -5 -5 -4 -3 -3 -2 -2 -1 -1 -0 -0 -0 0 1 2 3 4 5 6 6 7 7 7 7 7 7 7 7 7 7 8 8 9 9 10 12 14 17 18 19 20 20 20 20 20 21 20 20 20 19 19 19 19 19 19 19 18 18 18 18 17 17 16 15 15 14 14 14 13 13 13 13 13 14 14 15 16 17 18 19 20 20 19 19 18 18 17 17 16 16 16 17 16 16 16 16 16 16 15 15 14 13 12 12 12 13 14 15 16 17 17 17 17 17 17 18 18 19 19 19 19 19 18 17 17 17 17 16 16 16 15 14 13 12 11 10 10 9 9 8 7 6 4 3 1 -0 -2 -2 -2 -2 -1 0 2 3 4 6 7 8 9 10 11 12 14 15 17 18 19 19 21 22 24 28 31 35 38 40 41 41 41 42 42 42 42 42 42 41 41 42 42 43 44 45 46 46 45 44 43 42 41 -90 -89 -87 -83 -77 -67 -59 -59 -61 -61 -59 -57 -57 -59 -59 -59 -58 -58 -57 -56 -55 -55 -54 -55 -55 -53 -51 -50 -50 -50 -51 -54 -56 -57 -57 -58 -58 -59 -58 -60 -62 -62 -62 -61 -60 -59 -58 -57 -56 -55 -54 -53 -53 -52 -52 -51 -52 -52 -51 -50 -47 -45 -44 -44 -44 -44 -45 -45 -43 -40 -38 -36 -36 -36 -37 -38 -39 -39 -39 -39 -41 -44 -48 -51 -52 -51 -48 -47 -47 -46 -45 -44 -42 -40 -41 -42 -43 -43 -42 -40 -38 -37 -35 -33 -30 -29 -29 -28 -27 -27 -27 -29 -30 -30 -29 -28 -23 -14 -7 -4 -3 -3 -2 0 3 5 3 -1 -5 -7 -7 -5 2 6 7 5 4 4 4 3 3 2 1 0 -0 -1 -0 0 1 2 2 3 5 6 9 13 17 21 23 25 27 29 31 30 28 28 29 31 32 31 30 29 28 27 27 26 25 23 19 15 12 11 10 9 8 7 7 6 5 3 2 2 2 1 -1 -3 -4 -4 -4 -4 -4 -4 -3 -2 -1 -1 -2 -3 -4 -5 -5 -6 -6 -6 -5 -5 -4 -4 -3 -3 -3 -3 -2 -2 -2 -1 -1 0 1 2 2 3 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 6 8 11 14 15 16 17 17 17 18 19 19 19 19 19 19 19 19 19 19 18 18 17 17 17 17 16 16 15 15 14 14 14 14 13 13 13 13 13 13 13 14 15 16 17 18 19 19 19 19 18 17 16 16 15 15 15 15 15 15 14 14 14 14 14 14 13 12 11 11 11 11 12 14 15 15 15 15 15 15 15 15 16 16 17 17 18 18 17 17 16 16 16 16 16 15 14 13 12 11 11 10 10 10 9 9 8 7 6 5 3 2 0 -1 -1 -1 -1 -0 1 2 3 4 5 6 7 8 10 11 12 13 15 16 18 18 19 20 21 23 26 29 31 33 34 36 37 38 39 39 40 40 40 40 40 41 41 42 42 44 45 46 45 45 43 42 42 -86 -84 -83 -81 -76 -70 -63 -59 -59 -59 -57 -54 -53 -55 -56 -57 -57 -57 -56 -56 -55 -54 -53 -52 -52 -51 -50 -49 -49 -50 -52 -54 -56 -56 -56 -57 -57 -57 -58 -60 -61 -61 -61 -61 -61 -60 -60 -59 -58 -56 -55 -54 -53 -52 -52 -51 -51 -51 -51 -50 -48 -46 -45 -44 -44 -44 -43 -41 -38 -36 -35 -34 -35 -37 -38 -39 -39 -39 -40 -41 -44 -48 -51 -53 -52 -50 -47 -46 -46 -46 -45 -43 -41 -40 -41 -41 -41 -39 -38 -37 -35 -34 -32 -29 -27 -25 -24 -24 -25 -25 -27 -28 -28 -28 -28 -28 -24 -14 -6 -3 -2 -5 -7 -7 -4 2 4 5 4 -1 -7 -8 -3 5 9 8 7 7 6 6 5 4 3 2 1 1 1 2 2 3 4 5 6 8 12 16 19 22 24 25 27 28 29 29 28 29 30 31 30 30 29 28 27 27 26 25 23 20 15 12 10 9 8 7 7 7 6 5 3 2 2 2 1 -1 -2 -3 -4 -4 -4 -5 -5 -5 -4 -3 -2 -3 -4 -5 -6 -6 -6 -7 -7 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -3 -2 -1 -1 -0 1 1 2 2 2 2 2 2 2 2 1 1 2 2 2 2 2 3 5 8 11 13 14 15 15 16 17 18 18 18 18 19 19 19 19 19 19 18 18 17 17 16 16 15 15 15 15 15 15 14 14 14 14 13 13 13 13 13 13 14 15 16 17 18 18 18 18 17 16 15 15 15 15 15 15 14 14 13 13 13 13 13 13 12 11 10 9 9 10 10 12 13 13 13 13 13 13 13 13 13 13 14 15 16 16 16 16 16 16 16 15 15 14 14 13 12 11 11 10 10 10 9 9 9 8 8 7 5 4 2 1 0 -0 -0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 15 16 17 17 18 19 20 22 24 25 27 28 29 30 32 33 35 36 36 37 37 38 38 38 38 39 40 41 42 42 42 42 41 41 -81 -80 -79 -77 -73 -69 -64 -59 -57 -56 -55 -53 -52 -54 -55 -56 -57 -57 -57 -57 -56 -54 -53 -52 -52 -51 -50 -50 -51 -52 -54 -55 -56 -56 -56 -56 -57 -57 -58 -60 -60 -60 -60 -61 -62 -63 -62 -61 -60 -59 -58 -57 -55 -53 -52 -50 -50 -50 -50 -50 -48 -47 -46 -45 -44 -42 -40 -38 -35 -34 -33 -33 -35 -37 -39 -39 -40 -41 -42 -45 -49 -52 -54 -53 -51 -48 -46 -46 -46 -46 -45 -43 -42 -40 -40 -40 -39 -37 -36 -34 -32 -31 -28 -25 -23 -21 -20 -21 -23 -24 -26 -26 -26 -26 -26 -27 -22 -13 -5 -2 -3 -12 -18 -19 -17 -11 -7 1 6 7 4 -2 -6 2 9 9 8 8 8 7 7 6 4 3 2 2 2 3 4 5 6 7 9 12 15 18 20 22 23 24 25 26 26 26 29 31 31 30 30 29 28 28 27 26 25 23 19 15 12 9 8 7 6 6 6 6 5 4 2 2 1 1 0 -1 -2 -3 -3 -4 -5 -5 -5 -5 -4 -4 -4 -5 -6 -6 -7 -7 -7 -7 -7 -7 -6 -6 -6 -6 -6 -7 -7 -7 -7 -7 -6 -5 -4 -3 -2 -1 -1 -1 -0 0 0 0 0 0 0 -0 -0 -0 -0 -0 -1 -1 -0 1 3 5 8 11 13 14 15 16 17 17 18 19 19 19 19 19 19 19 19 19 18 18 17 16 15 15 15 15 15 15 16 16 15 15 15 14 14 14 13 13 14 14 15 15 16 16 17 16 16 15 15 14 14 14 14 14 14 14 14 13 13 12 12 12 11 10 9 9 8 8 8 9 10 11 11 11 11 11 11 11 11 11 11 12 13 13 14 14 15 15 15 15 15 15 15 14 13 12 11 11 10 10 10 9 9 9 9 9 8 7 6 5 4 3 2 1 1 2 2 3 4 5 6 7 8 9 9 10 11 12 13 14 15 16 16 17 18 19 21 22 24 25 25 26 27 28 30 31 33 33 34 34 35 35 35 35 36 38 39 39 39 39 39 39 -77 -75 -74 -72 -69 -65 -62 -58 -55 -54 -53 -52 -53 -56 -57 -58 -59 -60 -60 -59 -57 -55 -53 -53 -53 -53 -53 -54 -55 -57 -58 -57 -57 -57 -57 -57 -57 -58 -59 -59 -59 -59 -60 -61 -62 -64 -63 -62 -61 -61 -60 -60 -58 -55 -52 -49 -48 -49 -49 -49 -48 -47 -46 -45 -43 -41 -38 -36 -34 -33 -34 -34 -36 -38 -40 -41 -42 -44 -46 -49 -52 -54 -55 -53 -50 -47 -46 -46 -47 -46 -45 -43 -41 -40 -39 -38 -37 -35 -33 -31 -28 -26 -23 -20 -18 -17 -18 -19 -22 -24 -24 -24 -24 -25 -25 -24 -17 -9 -5 -4 -8 -18 -24 -26 -26 -24 -21 -12 -5 0 4 -0 -6 1 8 8 7 8 8 8 7 6 5 3 3 3 4 5 6 8 9 11 13 15 17 19 20 22 22 23 22 22 22 25 30 32 32 30 29 29 28 27 26 25 23 19 15 12 9 7 6 5 6 6 6 6 4 3 1 1 1 1 0 -1 -2 -2 -3 -4 -5 -5 -5 -5 -5 -6 -6 -6 -7 -7 -7 -7 -8 -8 -8 -7 -7 -7 -7 -8 -8 -9 -9 -9 -9 -9 -8 -7 -6 -5 -4 -3 -3 -2 -2 -2 -1 -1 -1 -1 -1 -2 -2 -2 -2 -2 -2 -2 -2 -1 1 3 6 9 12 14 15 16 17 17 18 18 19 19 19 19 19 19 19 19 18 17 17 16 15 15 15 15 16 16 17 17 17 17 17 16 16 15 15 14 14 14 14 15 15 15 15 15 14 14 13 13 13 13 14 14 15 15 14 14 13 12 12 11 10 8 8 7 6 6 6 7 8 9 9 10 10 10 9 9 9 9 10 10 11 12 12 13 13 13 14 15 15 15 15 14 13 12 12 11 11 11 10 10 10 10 10 10 9 9 8 7 6 5 4 4 3 3 4 5 5 6 7 8 8 9 9 10 11 12 13 13 14 15 16 17 17 19 20 21 22 23 23 24 24 25 27 28 29 30 30 31 32 32 32 33 34 35 36 37 37 37 37 37 -75 -72 -69 -66 -64 -62 -60 -57 -55 -54 -53 -54 -55 -58 -59 -60 -61 -62 -62 -60 -57 -55 -55 -54 -54 -56 -57 -59 -59 -61 -61 -59 -58 -58 -58 -58 -58 -59 -60 -61 -60 -60 -59 -59 -60 -62 -62 -62 -62 -61 -61 -61 -60 -58 -54 -50 -48 -48 -48 -47 -47 -47 -47 -45 -42 -39 -36 -35 -34 -34 -35 -35 -37 -39 -42 -43 -45 -46 -49 -52 -54 -55 -55 -52 -48 -47 -46 -47 -47 -46 -44 -42 -40 -38 -37 -36 -34 -32 -29 -26 -23 -20 -17 -16 -15 -15 -17 -19 -22 -23 -24 -24 -24 -24 -24 -21 -15 -11 -9 -10 -17 -24 -28 -30 -31 -31 -29 -25 -20 -14 -6 -6 -7 0 5 4 3 5 7 8 7 7 6 5 4 4 5 7 9 11 13 15 16 17 18 19 20 20 21 20 18 18 20 26 32 34 33 31 30 29 28 27 26 23 19 15 11 8 6 4 4 4 5 5 5 5 3 2 1 1 1 1 -0 -1 -2 -2 -3 -4 -5 -5 -6 -6 -7 -7 -7 -7 -7 -7 -7 -8 -9 -9 -9 -8 -9 -9 -10 -10 -10 -11 -11 -12 -11 -11 -10 -9 -8 -7 -6 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -0 2 4 7 10 13 14 15 16 16 17 18 18 18 18 18 18 18 18 18 18 17 16 15 15 15 15 15 16 17 17 18 18 19 18 18 18 17 16 16 15 15 14 14 13 13 13 13 12 12 12 12 12 12 13 14 14 15 15 15 14 12 11 9 8 6 5 5 4 4 4 5 6 7 7 8 8 8 8 8 8 8 9 10 10 11 11 11 12 12 13 14 15 15 15 14 14 13 13 12 12 12 12 11 11 11 11 11 10 10 9 9 8 7 6 6 6 6 6 6 7 7 8 8 8 9 10 10 11 12 12 13 14 15 16 16 17 18 19 20 21 22 22 22 22 23 24 25 25 25 26 27 28 29 29 30 31 32 33 34 35 35 35 34 -74 -72 -67 -63 -62 -60 -59 -57 -55 -55 -56 -56 -57 -60 -62 -63 -63 -64 -63 -61 -58 -57 -56 -56 -58 -59 -61 -62 -63 -64 -63 -61 -59 -57 -57 -59 -60 -62 -62 -62 -61 -60 -60 -59 -59 -59 -60 -60 -61 -61 -61 -60 -60 -58 -55 -51 -48 -48 -47 -46 -46 -47 -46 -44 -40 -37 -35 -35 -35 -36 -36 -37 -38 -41 -43 -45 -46 -47 -51 -54 -55 -55 -53 -50 -47 -47 -47 -48 -47 -45 -43 -41 -38 -36 -35 -33 -31 -28 -25 -21 -17 -15 -13 -13 -13 -15 -18 -21 -23 -24 -24 -24 -24 -24 -24 -22 -19 -18 -18 -19 -24 -29 -32 -34 -35 -35 -34 -33 -31 -28 -22 -18 -10 -1 3 0 -3 -1 5 8 8 8 8 7 7 7 7 9 11 14 16 18 18 18 18 18 18 18 18 17 15 15 19 29 34 35 33 31 30 30 29 27 24 20 15 11 9 6 4 3 3 3 4 4 4 3 2 1 1 1 1 0 -1 -2 -3 -3 -4 -4 -5 -6 -7 -7 -8 -8 -8 -7 -7 -7 -8 -9 -10 -10 -10 -10 -11 -11 -12 -12 -13 -13 -13 -14 -13 -13 -12 -11 -10 -10 -9 -8 -7 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -3 -3 -2 -0 2 5 8 11 13 14 14 15 15 16 16 16 16 16 16 16 16 16 16 16 16 15 15 15 15 15 16 17 18 18 19 20 20 20 19 19 18 18 17 16 14 13 12 11 11 11 11 11 11 11 11 11 12 13 14 15 15 15 14 12 10 8 6 4 3 3 3 3 3 4 4 5 6 6 7 7 8 7 7 7 8 9 9 10 11 11 11 11 12 13 13 14 14 14 14 14 14 14 13 13 13 13 13 13 12 12 12 11 11 10 9 9 8 8 8 8 8 8 8 8 8 8 9 9 10 10 11 12 12 13 14 14 15 15 16 16 17 18 18 19 20 20 21 21 22 22 22 21 22 22 23 24 25 26 27 28 30 31 33 33 33 32 -73 -73 -68 -64 -62 -61 -60 -58 -56 -57 -58 -60 -61 -62 -64 -64 -64 -63 -63 -61 -59 -58 -58 -59 -60 -62 -63 -64 -65 -66 -64 -62 -60 -58 -58 -60 -62 -64 -64 -62 -61 -61 -61 -61 -60 -59 -58 -58 -59 -60 -60 -59 -58 -57 -54 -50 -48 -47 -47 -46 -46 -46 -44 -42 -38 -36 -36 -37 -37 -38 -38 -38 -40 -43 -44 -44 -45 -48 -52 -54 -55 -54 -51 -48 -47 -47 -48 -48 -47 -44 -41 -39 -36 -34 -31 -29 -27 -24 -20 -16 -14 -13 -12 -13 -15 -17 -20 -22 -24 -24 -25 -25 -25 -24 -25 -25 -25 -25 -25 -26 -29 -31 -34 -36 -37 -37 -37 -37 -36 -35 -32 -27 -15 -4 -0 -2 -7 -6 1 7 8 8 10 10 9 9 10 11 14 16 18 19 19 18 17 17 16 16 15 14 13 15 22 31 35 34 33 31 31 31 29 26 21 16 12 9 6 4 3 2 2 2 3 3 3 2 1 1 1 1 0 -1 -2 -3 -4 -4 -5 -5 -6 -7 -7 -8 -8 -8 -8 -8 -8 -9 -10 -11 -12 -12 -12 -12 -13 -13 -14 -14 -15 -15 -15 -15 -15 -14 -14 -13 -12 -12 -11 -10 -9 -8 -8 -7 -7 -7 -7 -7 -7 -8 -7 -7 -7 -7 -6 -5 -4 -3 -2 -1 1 3 6 8 10 12 12 13 13 14 14 14 14 14 14 14 14 14 14 14 14 15 15 15 15 15 15 16 17 18 19 20 20 20 20 20 20 19 18 17 15 13 12 11 10 10 10 10 10 10 10 11 11 12 13 14 14 14 13 11 9 7 5 3 2 1 1 1 2 3 3 4 4 5 5 6 7 7 6 6 6 7 8 9 10 10 11 11 11 11 12 13 13 14 14 15 15 14 14 14 14 14 14 14 14 14 13 13 12 12 11 11 11 10 10 10 10 10 10 9 9 9 9 9 9 10 11 11 12 13 13 14 14 14 14 14 14 14 15 16 16 17 18 19 20 19 19 19 19 20 20 21 22 23 24 25 26 28 30 31 31 31 -69 -70 -69 -65 -63 -61 -60 -58 -57 -58 -60 -62 -63 -63 -64 -64 -63 -62 -62 -60 -59 -59 -60 -61 -63 -64 -65 -66 -67 -67 -65 -63 -61 -61 -61 -62 -64 -64 -63 -62 -61 -61 -62 -62 -61 -60 -58 -58 -58 -58 -58 -58 -56 -54 -51 -48 -46 -46 -46 -46 -45 -44 -42 -40 -38 -38 -38 -39 -39 -39 -39 -40 -42 -43 -43 -43 -45 -49 -51 -53 -53 -52 -49 -47 -47 -48 -48 -46 -45 -42 -40 -37 -34 -31 -28 -26 -23 -20 -17 -15 -13 -13 -14 -16 -18 -20 -22 -23 -25 -25 -26 -26 -25 -25 -26 -27 -28 -27 -27 -28 -30 -32 -34 -37 -38 -40 -40 -40 -37 -34 -30 -26 -15 -7 -3 -4 -7 -7 -0 4 5 5 8 10 11 11 12 13 14 16 18 19 19 18 16 15 14 14 14 13 14 18 25 32 34 33 33 32 31 30 27 23 17 12 9 7 5 3 2 1 1 1 1 1 1 0 0 1 1 0 -1 -2 -4 -4 -5 -5 -6 -6 -7 -8 -8 -9 -9 -9 -9 -9 -10 -11 -13 -14 -14 -14 -14 -15 -15 -15 -16 -16 -17 -17 -17 -17 -16 -16 -15 -15 -14 -14 -13 -12 -11 -10 -10 -9 -9 -9 -9 -10 -10 -10 -10 -9 -9 -8 -8 -7 -6 -5 -4 -2 -1 1 3 6 8 9 10 11 11 11 12 12 12 11 11 11 11 11 12 12 13 14 14 14 15 15 15 16 16 17 18 19 20 20 20 20 20 20 19 18 17 15 13 12 11 10 10 10 10 10 10 10 11 11 12 13 13 13 12 10 8 6 5 3 1 1 0 0 1 2 2 3 3 3 4 5 5 6 6 5 5 5 6 8 9 10 10 11 11 11 11 11 12 13 14 14 14 14 14 14 15 15 16 16 16 16 15 15 14 14 13 13 13 12 12 12 12 12 11 10 9 9 8 9 9 10 10 11 12 12 13 14 14 14 14 13 12 12 12 12 14 15 16 17 18 18 17 17 17 18 19 20 21 21 22 23 24 26 28 29 30 30 -70 -68 -67 -64 -62 -61 -59 -58 -58 -60 -62 -63 -63 -62 -63 -63 -61 -60 -60 -60 -60 -61 -63 -64 -66 -67 -68 -68 -69 -68 -65 -63 -62 -63 -64 -65 -65 -65 -63 -62 -62 -63 -64 -63 -62 -60 -59 -59 -58 -57 -56 -55 -53 -50 -48 -45 -44 -44 -44 -44 -44 -42 -41 -40 -39 -40 -40 -40 -40 -39 -40 -41 -42 -42 -42 -43 -47 -50 -51 -51 -50 -49 -47 -46 -46 -47 -46 -45 -43 -40 -37 -34 -30 -28 -26 -24 -21 -19 -17 -15 -15 -15 -17 -19 -22 -23 -23 -25 -26 -27 -27 -27 -27 -27 -28 -27 -26 -26 -27 -29 -31 -32 -34 -37 -39 -42 -43 -41 -34 -26 -18 -15 -9 -7 -6 -5 -4 -3 -0 1 -0 -2 2 6 9 11 12 12 13 15 16 17 17 16 15 13 12 13 13 13 16 21 27 31 32 32 32 32 30 27 23 19 14 10 8 6 4 3 1 0 -1 -1 -1 -0 -0 -0 0 1 0 -1 -2 -4 -5 -5 -6 -7 -7 -8 -8 -9 -10 -10 -10 -10 -11 -11 -13 -14 -15 -16 -17 -17 -17 -17 -17 -17 -17 -18 -18 -18 -18 -18 -17 -17 -16 -16 -15 -15 -14 -13 -12 -12 -11 -11 -11 -11 -11 -12 -12 -12 -12 -11 -11 -10 -9 -8 -7 -6 -5 -3 -2 -1 1 3 5 6 7 8 8 9 9 9 9 9 9 9 9 9 10 11 12 13 14 14 14 15 15 15 15 16 16 17 19 19 20 20 20 20 20 19 18 16 15 13 12 11 10 10 10 10 10 10 11 11 11 12 11 11 10 9 8 6 5 3 2 1 -0 -0 -0 0 1 1 2 2 2 3 4 5 5 4 4 4 5 6 8 9 10 11 11 11 11 11 12 12 13 14 14 14 14 14 15 15 16 17 17 17 17 17 17 16 15 15 14 14 14 14 14 13 12 11 10 9 8 9 9 10 10 11 11 12 13 13 14 14 14 13 12 11 11 11 12 13 15 16 17 17 16 16 16 17 18 19 20 21 21 22 23 24 26 28 29 29 -70 -68 -65 -63 -61 -60 -59 -58 -60 -62 -64 -64 -62 -62 -62 -61 -59 -59 -59 -61 -62 -64 -66 -67 -69 -70 -70 -71 -70 -69 -66 -65 -64 -65 -66 -67 -67 -66 -65 -64 -64 -65 -64 -63 -61 -60 -60 -59 -58 -55 -53 -52 -50 -47 -45 -43 -43 -44 -44 -44 -43 -41 -40 -40 -40 -41 -41 -40 -39 -39 -41 -42 -42 -42 -43 -46 -49 -50 -49 -47 -46 -45 -45 -46 -45 -45 -44 -43 -40 -37 -33 -30 -28 -26 -25 -23 -21 -19 -18 -17 -17 -18 -20 -22 -24 -24 -24 -25 -26 -26 -26 -26 -27 -27 -26 -22 -22 -25 -28 -30 -32 -33 -35 -37 -40 -43 -43 -38 -28 -15 -5 -5 -6 -8 -10 -8 -6 -5 -3 -2 -3 -7 -6 -4 1 7 9 10 11 12 13 13 14 14 12 11 10 12 13 14 18 22 27 29 30 31 31 29 26 23 19 15 12 9 7 5 3 1 -0 -2 -2 -3 -2 -2 -1 -0 -0 -1 -1 -3 -4 -5 -6 -7 -8 -8 -9 -10 -10 -11 -11 -12 -12 -13 -13 -14 -16 -17 -18 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -18 -18 -17 -17 -16 -15 -15 -14 -13 -13 -12 -13 -13 -13 -13 -13 -14 -14 -13 -13 -13 -12 -11 -10 -8 -7 -6 -5 -3 -2 -1 1 3 4 5 6 6 7 7 7 7 7 7 7 7 8 8 9 11 12 13 13 14 14 14 14 14 14 14 15 17 18 19 19 20 20 20 19 19 18 16 15 14 13 12 11 11 11 11 11 12 12 11 11 11 10 9 8 7 6 5 4 3 2 0 -1 -1 -1 -1 -0 -0 0 1 2 3 4 4 3 3 3 3 5 7 8 9 10 11 11 11 12 12 13 13 13 13 13 13 14 14 15 16 16 17 18 19 19 18 18 17 17 16 16 16 15 15 14 13 12 11 9 9 9 9 10 10 11 11 12 13 13 14 14 14 13 13 11 11 11 11 13 14 15 16 17 16 16 16 16 17 18 20 21 21 22 23 23 25 26 28 29 -71 -68 -65 -62 -60 -59 -59 -60 -62 -64 -65 -64 -62 -61 -60 -59 -58 -58 -60 -63 -65 -68 -69 -70 -71 -71 -72 -72 -71 -70 -68 -66 -66 -67 -68 -69 -69 -68 -67 -67 -67 -66 -64 -63 -61 -61 -60 -59 -56 -53 -51 -48 -47 -45 -44 -42 -43 -44 -45 -45 -42 -39 -39 -40 -40 -40 -38 -37 -37 -38 -40 -41 -40 -41 -43 -46 -47 -46 -44 -44 -44 -44 -44 -44 -42 -41 -40 -38 -35 -32 -30 -28 -26 -26 -25 -23 -21 -20 -19 -19 -20 -21 -22 -24 -24 -24 -24 -24 -24 -24 -23 -24 -26 -27 -24 -18 -20 -24 -29 -31 -32 -33 -35 -37 -40 -41 -39 -30 -19 -9 -6 -7 -9 -10 -11 -10 -9 -9 -7 -4 -1 -3 -9 -12 -9 -3 3 5 7 8 9 10 11 11 9 8 8 10 12 15 18 22 25 27 29 30 28 25 21 18 15 12 10 8 7 5 2 0 -2 -4 -4 -5 -4 -3 -2 -1 -2 -2 -3 -4 -5 -6 -7 -9 -10 -10 -11 -12 -13 -13 -14 -14 -15 -16 -17 -18 -18 -19 -20 -21 -21 -21 -21 -21 -21 -20 -21 -20 -20 -20 -20 -20 -19 -19 -18 -17 -17 -16 -15 -14 -14 -13 -14 -14 -14 -14 -15 -15 -15 -15 -15 -15 -14 -13 -12 -11 -10 -9 -7 -6 -5 -3 -2 -1 1 2 3 4 4 5 5 5 6 6 6 6 6 7 7 8 9 11 11 12 13 13 13 12 12 12 13 13 15 16 17 18 18 19 19 19 19 18 17 16 15 14 13 12 12 12 12 12 13 13 12 12 11 10 9 8 7 6 5 5 4 3 1 -0 -1 -2 -2 -2 -2 -1 -0 1 2 3 3 3 3 3 3 4 6 7 9 9 10 10 11 12 13 13 14 14 13 13 13 13 13 14 15 16 17 18 19 19 19 19 18 18 17 17 16 16 15 15 14 13 12 10 9 9 9 10 10 11 11 12 12 13 14 15 15 14 14 13 12 11 12 14 15 16 17 17 17 16 16 16 17 18 19 20 21 22 22 23 25 26 27 28 -71 -68 -65 -63 -60 -60 -60 -62 -64 -65 -64 -63 -62 -60 -59 -59 -59 -60 -63 -66 -68 -70 -71 -72 -72 -72 -73 -73 -72 -71 -69 -68 -69 -71 -72 -72 -71 -70 -70 -69 -69 -67 -66 -64 -63 -62 -61 -58 -54 -50 -48 -47 -46 -44 -43 -43 -44 -45 -45 -44 -40 -38 -38 -39 -39 -38 -36 -33 -33 -35 -38 -38 -39 -41 -43 -44 -43 -40 -41 -41 -41 -41 -41 -39 -37 -35 -32 -30 -28 -28 -27 -27 -26 -26 -25 -23 -22 -21 -21 -22 -23 -24 -25 -25 -25 -25 -25 -24 -24 -24 -23 -25 -27 -28 -25 -21 -22 -26 -29 -31 -32 -33 -35 -36 -36 -33 -28 -20 -13 -10 -11 -11 -12 -12 -11 -9 -8 -9 -9 -8 -6 -3 -3 -6 -10 -12 -8 -5 -0 3 5 7 8 7 7 6 6 7 10 13 16 20 23 26 28 27 24 19 16 13 12 10 9 7 6 4 2 -1 -3 -5 -6 -6 -5 -4 -3 -3 -4 -4 -5 -5 -6 -8 -9 -10 -12 -13 -14 -14 -15 -16 -16 -17 -18 -18 -19 -20 -21 -21 -22 -22 -22 -22 -22 -22 -22 -22 -22 -21 -21 -21 -21 -20 -20 -19 -19 -18 -17 -17 -16 -15 -15 -14 -15 -15 -15 -15 -16 -16 -16 -16 -16 -15 -15 -14 -14 -12 -11 -10 -9 -8 -6 -5 -4 -3 -1 0 1 2 3 3 4 4 5 5 5 5 6 6 7 7 8 9 10 10 11 11 11 10 10 10 11 11 12 14 15 16 16 17 17 17 17 17 17 16 16 15 14 14 13 13 13 14 14 14 13 13 12 11 10 9 8 7 6 5 4 3 3 1 -0 -2 -2 -3 -2 -2 -1 -0 1 2 3 3 3 3 3 4 5 7 8 8 9 9 10 11 13 14 14 14 14 14 13 13 13 13 14 15 16 18 18 19 19 19 19 18 18 18 17 16 16 15 14 14 13 11 11 10 10 11 11 11 12 12 13 14 14 15 15 15 15 14 14 13 14 16 17 18 18 18 18 17 17 16 16 17 19 20 21 21 22 24 25 26 27 27 -71 -68 -65 -64 -61 -60 -61 -63 -65 -64 -64 -62 -61 -59 -59 -60 -61 -63 -66 -68 -70 -71 -72 -72 -72 -73 -73 -74 -74 -73 -71 -71 -73 -74 -74 -73 -73 -72 -71 -71 -71 -69 -68 -66 -65 -63 -59 -55 -51 -49 -47 -46 -45 -45 -45 -45 -45 -46 -44 -42 -39 -37 -37 -36 -36 -35 -33 -31 -30 -32 -34 -36 -38 -40 -42 -42 -39 -37 -38 -38 -37 -35 -34 -31 -28 -26 -25 -24 -25 -26 -27 -27 -26 -26 -26 -25 -24 -24 -25 -26 -27 -27 -27 -27 -27 -27 -27 -26 -26 -26 -26 -28 -29 -28 -25 -23 -24 -27 -30 -32 -33 -33 -34 -34 -30 -20 -16 -13 -12 -13 -15 -17 -17 -15 -13 -11 -9 -10 -11 -13 -14 -15 -13 -9 -8 -9 -11 -12 -8 -6 -4 -1 3 3 3 4 5 6 7 9 13 17 21 25 26 24 19 14 11 10 9 8 7 6 4 3 0 -2 -5 -7 -7 -7 -6 -5 -5 -5 -5 -6 -6 -7 -8 -9 -11 -12 -14 -15 -16 -17 -17 -18 -18 -19 -20 -20 -21 -22 -22 -23 -23 -23 -23 -24 -24 -23 -23 -23 -23 -22 -22 -21 -21 -21 -20 -20 -20 -19 -18 -17 -17 -16 -15 -15 -15 -15 -16 -16 -16 -16 -17 -17 -16 -16 -16 -15 -14 -13 -13 -12 -10 -10 -8 -7 -6 -5 -3 -2 -1 0 1 2 3 4 4 5 5 5 6 6 6 7 7 7 8 8 8 8 8 8 9 9 9 9 10 11 13 14 15 15 16 16 16 16 16 16 16 16 15 15 14 14 14 14 15 15 15 14 14 13 12 11 10 8 7 6 5 5 4 3 2 1 -1 -1 -2 -2 -1 -1 0 1 2 3 3 2 3 3 5 6 7 7 8 8 9 10 12 13 14 14 15 14 14 13 13 13 14 15 16 17 18 18 18 19 18 18 18 18 17 16 16 15 14 14 13 13 12 12 12 12 12 13 13 13 13 14 15 15 16 16 16 16 16 16 17 19 20 20 20 20 19 18 18 17 17 18 19 20 20 21 22 23 25 26 26 27 -70 -67 -66 -65 -61 -60 -61 -63 -64 -63 -62 -62 -61 -61 -61 -62 -63 -65 -67 -69 -70 -72 -73 -74 -75 -75 -74 -74 -73 -73 -73 -74 -75 -76 -75 -74 -74 -73 -73 -73 -72 -71 -70 -68 -65 -61 -57 -53 -50 -49 -48 -48 -47 -47 -47 -47 -47 -45 -43 -40 -38 -36 -34 -33 -32 -31 -30 -28 -27 -28 -32 -35 -37 -39 -40 -38 -35 -34 -34 -32 -30 -27 -24 -22 -21 -20 -22 -24 -27 -28 -28 -28 -27 -28 -28 -28 -28 -28 -29 -29 -30 -31 -31 -32 -32 -32 -31 -30 -30 -30 -30 -30 -29 -26 -24 -24 -26 -28 -31 -34 -34 -33 -34 -33 -27 -14 -12 -12 -14 -17 -21 -24 -22 -18 -15 -15 -11 -10 -12 -16 -23 -30 -29 -22 -16 -11 -7 -7 -11 -17 -20 -14 -5 -5 -2 1 4 5 5 5 8 13 18 22 23 20 16 11 8 7 6 5 4 3 2 1 -1 -3 -6 -7 -8 -7 -7 -7 -7 -7 -7 -7 -7 -8 -9 -11 -12 -14 -16 -17 -18 -18 -19 -19 -20 -20 -21 -21 -22 -23 -23 -24 -24 -24 -24 -25 -25 -25 -25 -24 -24 -23 -23 -22 -21 -21 -21 -20 -20 -19 -19 -18 -17 -17 -16 -16 -15 -15 -16 -16 -17 -17 -17 -17 -17 -17 -16 -15 -15 -14 -13 -13 -12 -11 -10 -9 -8 -7 -6 -5 -3 -2 -1 0 1 2 3 4 5 5 5 6 6 6 6 6 6 6 6 7 7 7 7 7 7 8 9 9 10 11 12 13 14 15 15 15 15 16 16 16 16 15 15 15 15 15 15 16 16 16 15 15 14 12 11 10 9 8 7 7 6 6 5 4 3 2 1 1 0 0 1 2 2 2 2 2 2 3 4 5 6 7 7 7 8 9 10 12 13 14 15 15 15 14 14 14 14 15 15 16 16 17 17 18 18 18 18 18 17 17 16 15 15 14 14 14 13 13 13 14 14 14 14 14 15 15 15 16 17 18 18 18 18 19 21 22 23 23 22 21 21 20 18 18 17 18 19 19 20 20 22 23 24 25 26 26 -68 -66 -66 -65 -62 -60 -59 -61 -63 -63 -63 -63 -63 -62 -62 -63 -64 -66 -67 -69 -72 -74 -76 -77 -77 -75 -74 -73 -74 -74 -75 -76 -76 -76 -75 -74 -74 -74 -74 -74 -73 -72 -70 -67 -63 -58 -54 -52 -51 -51 -51 -50 -49 -50 -50 -49 -47 -44 -41 -39 -37 -34 -32 -30 -29 -28 -27 -25 -25 -27 -31 -34 -35 -37 -37 -35 -32 -30 -28 -25 -22 -19 -18 -18 -19 -22 -26 -30 -32 -30 -29 -28 -28 -29 -30 -30 -30 -31 -32 -33 -35 -36 -36 -37 -37 -36 -35 -35 -35 -34 -33 -31 -28 -26 -25 -25 -27 -29 -32 -35 -36 -35 -34 -30 -24 -14 -15 -16 -19 -24 -28 -27 -21 -18 -19 -23 -18 -13 -14 -20 -29 -38 -40 -37 -31 -23 -13 -12 -16 -25 -29 -22 -10 -11 -9 -5 -2 3 3 3 4 8 13 17 19 17 13 9 7 5 3 2 1 0 -0 -1 -3 -5 -6 -7 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -10 -12 -14 -16 -17 -18 -19 -20 -20 -20 -21 -21 -22 -22 -23 -24 -24 -24 -25 -25 -25 -26 -26 -26 -26 -26 -25 -24 -23 -23 -22 -21 -21 -20 -20 -20 -20 -19 -18 -18 -17 -16 -15 -15 -16 -17 -18 -18 -18 -18 -18 -17 -17 -16 -15 -15 -14 -14 -13 -13 -12 -11 -11 -10 -8 -7 -6 -5 -3 -2 -1 1 2 3 4 5 5 5 5 5 5 5 5 5 5 5 5 6 6 6 6 7 7 8 9 10 11 12 13 13 14 14 15 15 16 16 17 16 16 16 16 16 17 17 17 18 17 17 15 14 13 12 11 11 10 10 10 9 9 9 8 7 6 5 4 3 3 3 3 3 3 2 2 2 3 4 5 6 6 6 6 7 8 10 12 14 15 15 15 15 15 15 15 15 15 15 15 16 17 17 18 18 18 18 18 18 17 17 16 15 15 15 15 15 15 16 16 17 17 17 17 17 17 18 19 19 20 20 21 22 24 25 26 25 24 23 22 21 19 18 17 18 18 19 19 20 21 22 23 24 24 25 -66 -65 -66 -65 -62 -59 -59 -60 -63 -65 -65 -64 -63 -63 -63 -64 -65 -66 -68 -70 -74 -76 -78 -78 -76 -74 -73 -73 -74 -75 -76 -76 -76 -76 -75 -75 -75 -74 -74 -73 -72 -70 -68 -64 -60 -56 -54 -52 -53 -53 -54 -53 -53 -53 -52 -50 -46 -43 -39 -37 -34 -31 -30 -28 -27 -26 -26 -25 -25 -27 -30 -33 -35 -34 -33 -31 -28 -25 -22 -19 -17 -17 -19 -22 -26 -30 -34 -35 -32 -29 -28 -28 -29 -30 -31 -32 -32 -33 -35 -38 -40 -41 -42 -42 -41 -40 -40 -39 -39 -37 -35 -32 -30 -28 -27 -27 -28 -30 -33 -36 -38 -37 -33 -26 -17 -13 -20 -23 -27 -32 -34 -28 -21 -20 -25 -32 -28 -21 -18 -21 -30 -40 -45 -46 -43 -38 -30 -27 -30 -35 -36 -27 -10 -8 -9 -10 -11 -4 1 2 2 3 7 12 14 14 12 8 5 3 1 -1 -2 -2 -3 -3 -4 -6 -7 -7 -8 -8 -8 -9 -9 -9 -9 -9 -9 -10 -12 -14 -16 -17 -19 -19 -20 -20 -21 -21 -21 -22 -23 -23 -24 -24 -24 -25 -25 -26 -26 -27 -27 -27 -27 -26 -26 -25 -24 -23 -22 -21 -21 -20 -20 -20 -20 -20 -20 -19 -18 -16 -16 -16 -17 -18 -19 -19 -19 -19 -18 -18 -17 -17 -16 -16 -15 -14 -14 -14 -13 -13 -12 -12 -11 -10 -8 -7 -6 -4 -3 -2 -0 1 3 4 4 5 5 5 5 5 5 5 5 5 5 5 5 5 6 6 7 8 8 9 9 10 11 12 12 13 13 15 16 17 18 18 18 18 18 18 19 19 20 20 19 19 18 17 16 15 14 13 13 13 13 13 14 14 14 13 12 11 9 8 7 6 5 4 4 3 2 2 3 3 4 5 5 5 5 6 7 9 11 13 15 16 16 17 17 17 16 16 15 15 15 15 16 17 18 19 19 19 19 19 19 18 18 17 17 17 17 17 17 18 18 19 19 19 19 19 19 20 21 21 22 23 24 25 27 28 29 28 26 24 23 22 20 18 17 17 17 18 18 19 20 21 21 22 22 23 -65 -64 -66 -65 -61 -59 -59 -61 -64 -65 -65 -64 -64 -64 -64 -65 -66 -68 -70 -73 -75 -77 -78 -77 -74 -72 -72 -73 -74 -75 -75 -75 -76 -76 -75 -75 -74 -73 -71 -70 -69 -68 -65 -62 -59 -56 -54 -54 -55 -56 -57 -56 -55 -54 -51 -47 -44 -41 -37 -33 -30 -28 -28 -27 -26 -26 -26 -27 -27 -29 -31 -34 -35 -33 -30 -26 -22 -19 -16 -16 -17 -20 -25 -30 -33 -34 -33 -29 -25 -24 -26 -29 -32 -33 -34 -34 -35 -37 -40 -43 -45 -45 -46 -45 -44 -43 -43 -43 -42 -40 -37 -35 -33 -31 -29 -29 -30 -31 -34 -37 -39 -38 -31 -20 -10 -12 -22 -29 -33 -35 -36 -32 -26 -25 -30 -36 -36 -32 -27 -25 -29 -41 -47 -49 -49 -47 -44 -43 -43 -44 -42 -32 -15 -8 -7 -10 -15 -11 -3 -1 -1 -0 2 5 8 9 9 7 4 2 -1 -3 -4 -4 -4 -5 -5 -6 -7 -7 -8 -8 -9 -9 -9 -10 -10 -10 -11 -12 -14 -16 -17 -19 -20 -20 -21 -21 -21 -22 -22 -23 -24 -24 -25 -25 -25 -25 -26 -26 -27 -27 -27 -27 -27 -26 -26 -25 -24 -23 -22 -21 -21 -20 -20 -21 -21 -21 -21 -20 -18 -17 -17 -17 -18 -19 -20 -20 -20 -20 -19 -19 -18 -18 -17 -17 -16 -15 -15 -15 -14 -14 -14 -13 -12 -11 -10 -9 -8 -6 -5 -4 -2 -1 1 2 3 4 4 4 4 4 5 5 5 5 5 5 5 5 5 6 7 8 8 8 9 10 10 11 11 11 12 13 15 17 19 20 20 21 21 21 22 22 23 23 22 22 21 20 19 18 17 17 17 17 17 18 18 19 19 19 18 17 15 14 12 10 9 7 6 5 4 4 4 4 4 4 4 4 4 5 7 9 11 13 15 16 17 18 18 18 18 17 17 16 16 16 17 17 19 20 21 22 22 22 21 21 20 20 20 20 20 20 20 20 20 21 21 21 21 21 21 22 23 24 25 26 27 28 30 31 31 30 28 26 24 23 21 19 18 17 17 17 17 18 18 19 19 20 21 21 -63 -63 -65 -65 -61 -59 -59 -61 -64 -65 -65 -65 -64 -64 -66 -67 -68 -70 -72 -74 -76 -76 -76 -74 -72 -71 -72 -73 -73 -74 -73 -74 -75 -76 -74 -73 -72 -70 -69 -68 -68 -66 -64 -61 -59 -57 -57 -57 -58 -58 -58 -57 -54 -51 -47 -43 -41 -38 -34 -31 -28 -27 -27 -27 -27 -27 -28 -29 -30 -31 -33 -35 -35 -31 -26 -22 -18 -16 -16 -17 -21 -26 -32 -34 -33 -30 -27 -24 -23 -27 -32 -36 -37 -36 -36 -37 -40 -42 -45 -46 -46 -46 -46 -45 -44 -44 -43 -43 -43 -43 -40 -38 -35 -34 -32 -32 -32 -33 -35 -38 -40 -38 -30 -20 -15 -18 -25 -31 -35 -37 -38 -38 -36 -33 -33 -35 -39 -40 -39 -36 -35 -44 -50 -52 -52 -50 -49 -48 -47 -47 -44 -39 -28 -20 -15 -12 -13 -12 -6 -3 -3 -4 -3 -1 1 3 4 4 2 0 -2 -4 -5 -5 -5 -6 -6 -7 -8 -8 -9 -9 -9 -10 -10 -11 -12 -12 -13 -15 -16 -18 -19 -20 -21 -22 -22 -22 -22 -23 -24 -24 -25 -25 -25 -25 -25 -26 -27 -27 -27 -27 -27 -27 -27 -27 -26 -25 -24 -23 -22 -22 -21 -21 -21 -22 -22 -22 -22 -21 -19 -18 -18 -18 -20 -21 -21 -21 -21 -21 -20 -19 -19 -18 -18 -17 -17 -16 -16 -16 -15 -15 -14 -14 -13 -12 -11 -10 -9 -8 -7 -6 -4 -2 -0 1 3 3 4 4 4 4 4 5 5 5 5 5 5 5 5 6 7 7 8 8 9 9 10 10 10 10 11 12 14 16 18 20 22 23 24 24 25 25 26 26 26 25 25 24 23 22 22 21 21 22 22 23 24 24 24 23 22 22 21 19 17 15 13 11 10 8 7 6 6 5 5 5 5 5 5 6 7 9 11 13 15 16 18 19 19 20 20 19 18 18 18 17 18 19 20 22 23 24 25 25 24 24 23 22 22 22 23 23 23 22 22 22 23 23 23 23 23 24 25 26 27 28 29 30 31 32 32 31 30 28 26 24 22 20 19 18 17 17 17 17 17 17 17 18 19 20 -60 -61 -63 -63 -61 -59 -59 -61 -64 -65 -65 -65 -65 -66 -67 -68 -70 -72 -74 -75 -76 -75 -73 -71 -69 -70 -71 -71 -72 -72 -72 -74 -75 -74 -72 -70 -68 -67 -68 -69 -69 -66 -64 -62 -61 -60 -59 -59 -59 -58 -56 -53 -49 -46 -42 -39 -38 -35 -32 -30 -28 -28 -27 -27 -27 -28 -29 -30 -31 -32 -34 -35 -34 -29 -25 -22 -20 -19 -20 -24 -29 -34 -36 -33 -30 -27 -26 -26 -28 -34 -38 -39 -37 -37 -38 -41 -44 -45 -44 -44 -44 -43 -43 -42 -42 -41 -41 -42 -44 -44 -41 -38 -37 -36 -35 -35 -35 -35 -36 -38 -41 -42 -37 -31 -28 -30 -32 -34 -36 -39 -41 -42 -40 -36 -34 -35 -38 -40 -42 -43 -44 -49 -53 -54 -53 -50 -46 -45 -46 -46 -45 -44 -42 -38 -32 -24 -19 -13 -9 -8 -8 -9 -10 -9 -7 -5 -3 -2 -2 -2 -3 -4 -5 -6 -6 -7 -7 -8 -9 -9 -10 -10 -11 -11 -12 -13 -14 -15 -16 -17 -19 -20 -21 -22 -23 -23 -23 -23 -24 -24 -25 -25 -25 -26 -25 -26 -26 -27 -27 -28 -28 -28 -28 -27 -27 -26 -26 -25 -24 -23 -22 -22 -22 -22 -22 -23 -23 -23 -22 -21 -20 -19 -19 -20 -21 -22 -22 -22 -22 -21 -21 -20 -20 -19 -19 -18 -18 -17 -17 -16 -16 -15 -15 -14 -13 -12 -11 -11 -10 -9 -8 -7 -5 -3 -2 0 1 2 3 3 3 4 4 4 4 5 5 4 4 4 5 5 6 7 7 8 9 9 9 9 10 10 10 11 13 15 18 20 23 24 26 27 28 29 29 30 30 30 30 29 29 28 28 28 28 28 28 29 29 28 28 26 25 25 24 23 22 20 18 16 14 12 11 9 9 8 8 7 7 7 7 8 9 10 12 14 16 17 18 19 20 21 21 21 21 20 20 20 20 21 22 24 25 27 27 28 27 26 25 25 24 24 25 25 25 24 24 23 23 23 23 24 24 25 27 28 29 30 31 32 32 32 32 32 31 29 28 26 24 22 20 19 18 18 18 17 16 15 16 17 18 19 -58 -59 -61 -61 -60 -59 -59 -61 -63 -64 -65 -66 -66 -67 -68 -70 -72 -73 -74 -74 -73 -71 -69 -68 -69 -70 -70 -70 -69 -69 -70 -72 -72 -71 -69 -67 -66 -68 -71 -72 -70 -67 -64 -63 -62 -61 -61 -60 -58 -55 -52 -48 -44 -41 -38 -37 -37 -35 -33 -31 -29 -29 -27 -27 -28 -29 -30 -30 -31 -33 -35 -36 -34 -31 -27 -25 -24 -25 -27 -32 -36 -38 -36 -31 -29 -29 -29 -30 -34 -38 -39 -38 -36 -39 -42 -44 -44 -43 -41 -40 -40 -40 -40 -39 -38 -38 -39 -42 -44 -43 -39 -38 -38 -38 -37 -37 -36 -37 -37 -39 -42 -43 -40 -36 -35 -36 -35 -36 -38 -40 -43 -43 -41 -38 -36 -36 -38 -39 -40 -42 -45 -49 -52 -54 -51 -44 -36 -37 -41 -44 -45 -46 -46 -47 -47 -44 -38 -27 -23 -21 -21 -21 -23 -22 -19 -16 -14 -11 -9 -7 -6 -5 -5 -6 -7 -8 -9 -9 -10 -10 -11 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -22 -23 -24 -24 -24 -25 -25 -25 -25 -26 -26 -26 -26 -26 -27 -27 -28 -28 -28 -28 -28 -28 -27 -27 -26 -25 -25 -24 -23 -23 -23 -22 -23 -23 -23 -23 -23 -22 -21 -20 -20 -20 -21 -22 -22 -23 -23 -23 -22 -22 -21 -20 -20 -20 -19 -19 -18 -18 -17 -16 -15 -14 -14 -13 -12 -12 -11 -10 -10 -9 -8 -6 -4 -3 -1 -0 1 2 2 3 3 4 4 4 4 4 4 4 4 4 5 5 5 6 7 8 8 9 9 10 10 10 11 12 14 17 19 22 24 26 28 29 30 31 32 33 33 34 35 35 36 36 36 36 36 35 35 34 32 31 29 28 27 26 26 25 23 22 20 17 15 14 12 12 11 11 11 10 10 10 10 11 13 14 16 17 18 19 20 20 21 22 22 23 22 22 22 22 23 25 26 27 28 29 29 29 29 28 27 26 26 26 26 26 25 24 24 24 24 24 25 26 27 29 30 31 32 32 32 33 33 32 32 31 30 29 28 26 25 23 21 20 20 19 18 16 15 15 16 17 19 -56 -56 -57 -58 -58 -59 -60 -61 -62 -64 -66 -67 -68 -68 -69 -71 -72 -73 -73 -72 -69 -67 -66 -67 -68 -69 -69 -68 -67 -67 -68 -70 -70 -69 -67 -66 -67 -70 -73 -73 -70 -67 -64 -62 -61 -61 -60 -58 -55 -51 -47 -44 -41 -38 -37 -37 -38 -36 -34 -31 -30 -29 -28 -28 -29 -30 -31 -30 -32 -35 -37 -38 -36 -33 -30 -29 -29 -31 -35 -39 -41 -39 -35 -31 -31 -32 -32 -32 -36 -37 -36 -35 -37 -42 -44 -44 -43 -41 -39 -39 -39 -39 -38 -36 -35 -36 -39 -42 -42 -39 -38 -38 -39 -39 -38 -37 -37 -37 -38 -39 -41 -42 -40 -37 -37 -38 -37 -38 -39 -41 -44 -44 -43 -41 -39 -38 -38 -38 -39 -40 -43 -46 -50 -51 -48 -40 -29 -30 -37 -44 -47 -48 -48 -50 -51 -51 -51 -47 -44 -42 -40 -40 -41 -40 -37 -32 -28 -22 -18 -15 -12 -9 -7 -7 -8 -9 -10 -10 -11 -12 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -26 -26 -26 -26 -27 -27 -27 -27 -27 -27 -28 -28 -29 -28 -28 -28 -28 -28 -28 -27 -26 -25 -24 -24 -23 -23 -23 -23 -23 -23 -23 -23 -22 -22 -21 -20 -20 -21 -21 -22 -23 -23 -23 -23 -23 -22 -22 -21 -21 -20 -20 -19 -19 -18 -17 -16 -15 -14 -14 -13 -12 -12 -11 -10 -10 -9 -8 -6 -5 -3 -2 -2 -1 0 1 2 3 4 4 4 4 4 4 4 4 4 4 4 4 5 6 7 7 8 9 10 10 10 11 12 13 15 18 21 23 25 27 29 30 32 33 34 36 37 38 39 41 42 43 44 43 42 40 38 36 34 31 29 28 27 26 26 25 24 22 20 18 16 15 14 14 14 14 14 14 13 14 14 15 16 18 19 19 20 20 21 21 22 23 24 24 24 24 25 26 27 28 29 29 30 30 30 30 29 28 27 26 26 26 26 26 25 24 24 25 26 27 28 29 30 31 32 32 33 33 33 33 33 32 31 31 30 29 28 26 25 24 23 22 21 19 17 15 15 15 17 18 -55 -53 -54 -56 -58 -59 -60 -60 -62 -64 -66 -67 -68 -69 -69 -69 -70 -69 -69 -68 -66 -65 -64 -66 -67 -67 -67 -66 -65 -65 -67 -70 -69 -68 -66 -67 -70 -72 -73 -72 -69 -66 -62 -60 -58 -57 -56 -54 -50 -47 -44 -42 -40 -38 -38 -39 -39 -37 -35 -32 -30 -29 -29 -29 -30 -31 -31 -31 -34 -37 -40 -40 -38 -36 -34 -33 -35 -38 -42 -43 -42 -38 -34 -32 -33 -32 -31 -32 -34 -33 -33 -35 -39 -44 -45 -46 -44 -43 -42 -41 -41 -40 -38 -35 -34 -35 -39 -41 -40 -37 -36 -37 -39 -39 -39 -38 -37 -37 -37 -38 -40 -40 -38 -37 -37 -38 -38 -38 -40 -42 -44 -45 -45 -44 -42 -40 -39 -38 -38 -38 -40 -43 -46 -48 -47 -43 -38 -38 -42 -46 -49 -50 -51 -52 -53 -53 -53 -52 -51 -50 -48 -47 -48 -50 -52 -51 -47 -36 -29 -25 -21 -16 -12 -9 -9 -10 -11 -12 -12 -13 -14 -15 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -27 -27 -27 -27 -28 -28 -27 -27 -27 -28 -29 -29 -29 -29 -28 -28 -28 -28 -28 -27 -26 -25 -24 -24 -24 -24 -23 -23 -23 -23 -22 -22 -22 -21 -21 -20 -21 -21 -22 -23 -24 -24 -24 -24 -23 -23 -22 -22 -21 -21 -21 -20 -19 -18 -17 -16 -15 -14 -14 -13 -13 -12 -11 -10 -10 -9 -7 -6 -5 -4 -4 -3 -2 -0 1 2 3 3 3 3 3 3 3 4 4 4 4 4 4 4 5 6 6 7 8 9 10 11 11 12 13 14 16 19 21 23 25 26 28 30 32 34 36 37 39 42 44 46 48 49 49 47 45 43 40 37 34 31 29 28 27 26 26 25 23 22 20 18 17 17 17 17 18 18 17 17 17 17 18 19 19 20 20 21 21 21 21 22 23 24 26 26 27 27 28 28 29 29 29 29 29 29 29 29 28 27 27 26 26 26 26 25 25 25 26 27 29 30 31 31 31 32 32 33 33 34 34 33 33 32 31 30 29 28 28 27 26 26 25 23 21 19 17 16 16 17 17 -57 -54 -53 -54 -57 -59 -60 -61 -62 -64 -65 -66 -67 -68 -68 -67 -66 -65 -65 -65 -65 -64 -64 -65 -66 -66 -65 -65 -64 -65 -69 -70 -69 -67 -67 -69 -72 -73 -72 -70 -66 -62 -59 -56 -55 -53 -52 -49 -46 -44 -42 -42 -40 -40 -41 -41 -40 -38 -36 -34 -31 -30 -29 -30 -31 -31 -31 -33 -36 -39 -41 -41 -40 -38 -38 -38 -40 -43 -46 -46 -41 -36 -32 -32 -32 -30 -29 -31 -30 -31 -33 -37 -41 -45 -47 -49 -50 -49 -47 -46 -44 -41 -37 -34 -33 -34 -38 -40 -38 -35 -36 -37 -38 -39 -39 -38 -38 -38 -38 -39 -40 -39 -38 -37 -38 -38 -38 -39 -40 -42 -44 -45 -46 -45 -44 -42 -40 -39 -38 -38 -39 -41 -43 -45 -46 -46 -45 -45 -46 -48 -49 -50 -52 -53 -54 -55 -55 -54 -53 -52 -51 -50 -51 -53 -56 -57 -57 -52 -44 -38 -33 -27 -21 -15 -11 -11 -12 -13 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -26 -27 -28 -28 -28 -28 -28 -28 -28 -28 -28 -28 -29 -29 -29 -29 -29 -29 -29 -29 -28 -27 -26 -25 -25 -25 -24 -24 -24 -24 -23 -23 -22 -22 -22 -21 -21 -21 -21 -21 -22 -23 -24 -25 -25 -25 -24 -24 -23 -23 -22 -22 -21 -21 -21 -19 -18 -17 -16 -15 -15 -14 -13 -12 -12 -11 -10 -9 -8 -7 -7 -6 -6 -5 -4 -2 -1 -0 0 1 2 2 2 2 3 3 3 4 4 3 3 4 4 4 5 5 7 8 9 10 11 12 12 13 14 15 17 19 20 22 23 25 27 29 32 34 36 39 42 45 48 50 51 51 50 48 46 43 40 37 34 31 29 27 26 26 25 24 23 22 21 20 20 20 21 21 21 21 20 20 20 20 21 21 21 21 22 22 22 21 22 23 25 26 27 28 29 29 29 29 29 29 29 28 28 28 28 27 27 26 26 26 26 26 26 26 26 27 29 30 31 32 31 31 31 32 33 34 34 34 34 33 32 31 30 29 29 28 28 28 28 27 26 24 22 20 19 18 18 18 -58 -56 -55 -55 -56 -58 -59 -60 -62 -63 -64 -65 -65 -65 -64 -64 -63 -63 -63 -64 -64 -63 -63 -64 -65 -65 -64 -63 -64 -66 -70 -71 -69 -67 -68 -71 -73 -72 -70 -67 -63 -59 -56 -53 -52 -50 -49 -46 -44 -43 -43 -43 -43 -43 -44 -43 -41 -39 -38 -36 -33 -30 -30 -31 -32 -32 -32 -35 -38 -39 -40 -40 -40 -41 -43 -44 -45 -46 -47 -44 -38 -31 -27 -29 -29 -28 -28 -30 -29 -32 -35 -38 -42 -46 -49 -52 -52 -52 -50 -48 -45 -40 -36 -34 -33 -34 -37 -38 -37 -34 -34 -35 -37 -38 -39 -39 -39 -39 -40 -41 -40 -38 -37 -37 -38 -38 -38 -39 -41 -42 -44 -45 -45 -46 -46 -45 -43 -41 -39 -38 -38 -40 -42 -44 -45 -46 -47 -47 -47 -48 -49 -51 -53 -54 -55 -55 -55 -55 -54 -53 -52 -52 -53 -54 -56 -58 -60 -60 -58 -55 -50 -42 -36 -27 -20 -15 -13 -14 -15 -16 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -27 -28 -28 -28 -28 -29 -29 -29 -29 -29 -29 -29 -30 -30 -30 -30 -30 -30 -29 -29 -28 -27 -26 -26 -25 -25 -25 -25 -25 -24 -23 -23 -22 -22 -22 -22 -21 -21 -21 -22 -23 -24 -25 -26 -26 -26 -25 -24 -23 -23 -22 -22 -22 -22 -21 -20 -19 -17 -16 -16 -15 -14 -13 -12 -11 -11 -10 -9 -9 -8 -8 -7 -7 -6 -4 -3 -2 -2 -2 -1 -1 -1 -0 0 1 2 2 3 3 3 3 3 4 4 4 5 6 7 9 10 11 12 12 13 14 15 16 17 18 19 20 22 24 26 29 32 35 38 41 44 46 49 51 51 51 49 47 45 42 40 37 34 31 29 27 26 25 25 25 25 24 24 24 24 24 24 24 24 23 22 22 22 22 23 22 22 22 22 22 22 22 23 25 27 28 29 29 29 29 29 29 28 28 27 27 26 26 26 26 26 26 26 26 27 27 27 27 28 29 30 31 32 32 32 32 32 33 34 34 34 34 33 32 31 30 29 29 29 29 29 30 29 28 26 25 23 21 21 20 20 -59 -58 -57 -56 -57 -57 -58 -59 -60 -62 -62 -62 -62 -61 -61 -61 -62 -62 -63 -64 -64 -63 -63 -63 -64 -64 -63 -62 -63 -66 -70 -70 -68 -67 -69 -71 -71 -69 -66 -62 -58 -56 -54 -51 -49 -48 -46 -43 -43 -44 -45 -45 -45 -46 -45 -43 -41 -41 -40 -38 -35 -31 -30 -32 -34 -35 -36 -37 -38 -38 -38 -38 -39 -43 -46 -48 -50 -50 -47 -39 -31 -25 -24 -28 -27 -27 -28 -30 -29 -32 -34 -37 -40 -43 -46 -49 -50 -49 -49 -47 -42 -38 -35 -36 -35 -36 -37 -36 -34 -32 -33 -34 -36 -38 -40 -40 -40 -40 -41 -41 -40 -38 -37 -37 -38 -39 -38 -39 -41 -42 -43 -44 -45 -46 -47 -46 -44 -42 -40 -38 -38 -39 -42 -44 -45 -46 -47 -47 -47 -48 -48 -50 -53 -54 -55 -55 -55 -55 -55 -54 -54 -54 -55 -55 -55 -57 -60 -63 -64 -64 -63 -59 -55 -45 -36 -25 -17 -15 -16 -17 -18 -18 -19 -20 -21 -22 -23 -25 -26 -26 -27 -27 -28 -28 -28 -28 -29 -29 -29 -29 -29 -29 -30 -30 -31 -31 -31 -31 -30 -30 -29 -29 -28 -27 -26 -26 -26 -26 -26 -26 -25 -24 -24 -23 -23 -22 -22 -22 -22 -22 -22 -22 -23 -24 -26 -26 -27 -26 -25 -24 -23 -23 -22 -22 -22 -22 -21 -20 -19 -18 -17 -16 -15 -13 -12 -11 -11 -11 -10 -10 -9 -9 -9 -8 -8 -6 -5 -4 -4 -4 -4 -4 -4 -4 -3 -2 -1 0 1 1 2 2 2 3 3 3 3 4 5 7 8 10 11 12 12 13 14 14 15 16 16 17 18 20 22 24 27 30 33 36 39 41 44 46 48 49 49 48 47 46 44 42 40 38 35 32 29 27 26 26 27 27 28 28 28 28 28 27 27 26 25 25 24 24 24 24 24 23 22 22 22 22 23 24 25 27 28 29 30 30 29 29 29 28 28 27 26 25 25 25 25 25 25 26 26 27 28 28 27 27 27 29 30 32 32 32 32 33 33 33 34 34 33 32 32 31 30 29 29 29 29 30 31 30 29 28 26 25 24 23 23 22 -60 -59 -58 -57 -57 -57 -57 -58 -59 -60 -61 -60 -59 -59 -60 -62 -63 -63 -63 -63 -63 -63 -63 -63 -63 -62 -61 -60 -61 -64 -68 -68 -66 -66 -68 -70 -68 -65 -61 -57 -55 -54 -52 -50 -48 -46 -44 -43 -45 -46 -47 -46 -47 -48 -46 -43 -41 -42 -41 -38 -34 -31 -32 -35 -37 -38 -37 -37 -37 -38 -38 -39 -42 -45 -49 -52 -53 -51 -44 -34 -26 -23 -24 -27 -27 -28 -29 -30 -30 -32 -35 -38 -41 -43 -44 -45 -46 -47 -49 -45 -40 -37 -37 -39 -38 -37 -36 -33 -30 -30 -32 -34 -36 -38 -39 -39 -40 -40 -40 -40 -39 -38 -37 -38 -40 -38 -36 -36 -39 -42 -42 -43 -45 -47 -48 -47 -45 -43 -41 -39 -38 -40 -42 -44 -45 -46 -46 -46 -46 -46 -48 -50 -52 -54 -54 -55 -55 -55 -55 -55 -55 -55 -55 -55 -56 -58 -60 -63 -65 -67 -68 -69 -68 -63 -56 -44 -28 -19 -17 -18 -19 -19 -20 -21 -22 -24 -25 -26 -27 -28 -28 -28 -28 -28 -28 -28 -29 -30 -30 -30 -30 -30 -30 -31 -31 -32 -32 -31 -31 -30 -29 -29 -28 -27 -27 -27 -27 -27 -26 -26 -25 -25 -24 -24 -23 -23 -23 -23 -23 -22 -22 -23 -23 -25 -26 -26 -26 -26 -25 -24 -23 -22 -22 -22 -22 -21 -21 -20 -19 -18 -17 -16 -14 -13 -11 -11 -11 -11 -11 -10 -10 -10 -10 -9 -8 -7 -6 -5 -6 -6 -7 -7 -7 -6 -5 -4 -2 -1 -1 0 1 1 2 2 2 2 3 4 5 6 8 9 10 11 12 13 13 14 15 15 16 17 18 20 22 24 27 29 32 34 36 38 40 43 45 46 47 47 46 46 45 44 42 41 39 36 33 31 29 29 29 30 31 32 32 31 31 31 30 29 29 28 27 26 26 26 25 24 23 22 22 23 24 25 26 27 28 29 30 30 30 29 29 29 28 27 26 25 24 25 25 25 25 26 26 27 28 27 27 26 26 27 29 31 33 33 33 33 33 33 33 33 32 32 31 31 30 30 29 30 30 31 31 31 30 29 27 26 26 26 26 26 -61 -60 -58 -57 -56 -56 -56 -57 -57 -59 -59 -59 -59 -59 -61 -63 -63 -63 -62 -63 -63 -63 -62 -62 -61 -60 -57 -57 -59 -62 -65 -65 -65 -66 -67 -66 -64 -61 -57 -55 -54 -53 -51 -49 -47 -46 -45 -46 -48 -49 -49 -50 -51 -48 -44 -41 -41 -41 -39 -37 -34 -33 -35 -39 -41 -41 -39 -39 -39 -40 -39 -39 -40 -43 -47 -51 -52 -49 -40 -30 -23 -22 -26 -27 -28 -30 -32 -33 -34 -35 -37 -39 -40 -39 -40 -40 -43 -46 -48 -42 -36 -36 -39 -39 -38 -35 -31 -27 -27 -29 -32 -34 -35 -37 -39 -40 -41 -41 -40 -40 -39 -38 -38 -39 -41 -37 -34 -35 -39 -43 -43 -43 -45 -46 -47 -48 -47 -45 -43 -41 -40 -41 -43 -43 -44 -44 -45 -45 -45 -46 -47 -50 -52 -54 -54 -55 -55 -55 -55 -55 -55 -56 -56 -56 -57 -59 -61 -63 -65 -67 -69 -71 -72 -73 -70 -61 -46 -30 -22 -19 -20 -21 -21 -21 -23 -25 -26 -28 -29 -29 -29 -29 -28 -28 -28 -29 -30 -31 -31 -31 -31 -31 -31 -31 -32 -32 -32 -32 -31 -30 -30 -29 -28 -28 -27 -27 -27 -27 -26 -26 -25 -25 -24 -24 -24 -23 -23 -23 -23 -23 -23 -23 -23 -24 -25 -25 -25 -25 -24 -23 -22 -22 -21 -21 -21 -21 -20 -19 -19 -18 -17 -15 -13 -12 -11 -11 -11 -11 -12 -12 -12 -11 -11 -10 -9 -8 -7 -7 -8 -9 -9 -9 -8 -7 -6 -5 -3 -2 -1 -1 0 1 1 2 2 3 3 4 5 6 7 8 9 10 11 12 13 14 15 15 16 18 19 21 23 25 28 30 32 33 34 36 37 40 42 44 45 46 46 45 45 44 43 43 41 39 37 35 33 33 33 34 35 35 35 35 35 34 34 33 33 32 31 30 29 29 28 26 25 23 24 25 26 27 28 28 29 29 30 30 30 30 30 30 29 27 26 25 25 25 25 25 25 25 26 27 27 27 26 26 25 26 28 30 32 34 34 33 33 33 32 32 31 31 30 30 30 30 30 30 31 32 32 31 30 29 28 27 27 27 28 28 -61 -60 -57 -55 -55 -55 -55 -56 -56 -58 -58 -58 -59 -61 -63 -63 -63 -62 -62 -63 -63 -62 -61 -59 -58 -56 -54 -54 -56 -59 -62 -63 -63 -63 -63 -61 -59 -57 -55 -55 -54 -53 -51 -50 -49 -48 -49 -50 -51 -52 -52 -52 -50 -46 -42 -40 -40 -40 -38 -37 -36 -36 -39 -43 -43 -42 -40 -40 -41 -41 -39 -37 -36 -39 -41 -44 -45 -44 -37 -28 -23 -22 -24 -26 -29 -31 -33 -34 -36 -37 -38 -38 -37 -37 -37 -38 -41 -44 -43 -37 -34 -35 -39 -38 -34 -29 -25 -24 -26 -30 -32 -34 -36 -38 -40 -42 -42 -42 -41 -40 -39 -39 -39 -40 -42 -41 -40 -41 -43 -44 -44 -44 -44 -45 -46 -47 -47 -46 -44 -42 -41 -42 -42 -43 -43 -43 -43 -44 -45 -45 -47 -50 -52 -53 -54 -55 -55 -54 -54 -54 -55 -57 -58 -58 -59 -60 -62 -64 -66 -67 -69 -70 -71 -74 -74 -72 -64 -49 -33 -24 -21 -22 -22 -23 -24 -25 -27 -29 -30 -30 -30 -29 -29 -29 -29 -30 -31 -31 -32 -31 -31 -31 -31 -32 -32 -33 -33 -33 -32 -31 -30 -29 -29 -28 -28 -28 -27 -27 -26 -25 -25 -25 -24 -24 -24 -24 -24 -24 -24 -24 -23 -22 -22 -23 -23 -23 -23 -23 -23 -22 -21 -21 -21 -21 -20 -20 -20 -19 -18 -18 -17 -14 -12 -11 -10 -11 -12 -12 -12 -13 -13 -12 -11 -10 -9 -8 -9 -9 -10 -11 -10 -9 -8 -6 -5 -4 -4 -3 -2 -1 -0 1 1 2 2 3 3 4 4 5 5 6 7 8 10 11 12 13 15 16 18 20 22 23 25 27 29 30 32 32 33 34 36 38 40 42 44 45 45 45 44 44 43 43 43 42 41 39 38 37 37 38 38 38 38 38 38 38 38 38 37 36 35 34 33 32 31 30 28 27 27 28 28 29 29 29 29 29 30 30 31 31 31 31 30 29 28 27 26 26 26 26 26 25 25 26 26 26 26 26 25 25 27 29 32 33 34 33 33 32 31 31 30 30 30 30 30 30 30 31 31 32 32 31 30 29 28 27 28 28 29 29 -61 -58 -55 -53 -53 -54 -55 -55 -55 -56 -57 -58 -60 -63 -64 -63 -62 -61 -61 -61 -60 -59 -57 -56 -54 -53 -51 -52 -54 -57 -60 -60 -60 -59 -57 -56 -55 -55 -55 -55 -55 -54 -53 -53 -53 -53 -53 -53 -54 -54 -53 -51 -46 -42 -39 -38 -39 -39 -38 -38 -38 -40 -44 -46 -45 -43 -40 -40 -40 -38 -35 -32 -31 -31 -32 -34 -38 -40 -36 -29 -23 -20 -21 -24 -28 -31 -32 -34 -37 -37 -37 -36 -35 -36 -34 -34 -35 -37 -34 -32 -33 -36 -37 -33 -26 -22 -22 -24 -28 -30 -33 -35 -37 -40 -42 -44 -44 -43 -42 -40 -40 -41 -41 -42 -43 -44 -46 -47 -47 -46 -44 -44 -43 -44 -45 -47 -47 -46 -45 -43 -42 -42 -42 -42 -42 -42 -42 -43 -44 -45 -47 -49 -51 -52 -53 -55 -55 -54 -54 -54 -55 -57 -59 -61 -62 -63 -65 -66 -67 -68 -68 -69 -70 -72 -74 -76 -75 -67 -50 -34 -24 -21 -23 -24 -25 -26 -28 -29 -30 -31 -31 -30 -30 -30 -30 -31 -32 -32 -32 -32 -31 -31 -31 -31 -32 -33 -33 -33 -32 -31 -31 -30 -29 -29 -29 -28 -28 -27 -26 -25 -25 -24 -24 -24 -24 -24 -24 -24 -24 -24 -23 -22 -21 -21 -21 -21 -22 -21 -21 -21 -21 -20 -20 -20 -20 -20 -19 -19 -18 -18 -16 -14 -12 -11 -10 -11 -12 -12 -13 -13 -13 -12 -11 -10 -9 -9 -10 -11 -12 -11 -10 -8 -6 -5 -4 -4 -3 -3 -2 -1 -0 1 1 2 2 2 3 3 3 3 4 4 5 7 8 10 12 13 15 17 19 21 23 25 26 28 29 30 31 31 31 32 34 36 38 41 42 44 44 44 44 43 43 43 43 44 43 43 42 41 41 40 40 39 39 39 39 40 41 42 42 41 40 38 37 36 35 34 33 32 31 31 31 31 31 30 30 30 30 30 31 32 32 32 32 31 30 29 29 28 28 27 26 26 25 25 25 26 27 27 26 25 25 27 30 32 34 33 33 32 31 30 30 29 29 30 30 30 30 31 32 32 32 31 30 29 28 28 28 29 30 30 -59 -55 -52 -51 -52 -53 -52 -52 -54 -55 -58 -60 -62 -63 -63 -61 -59 -58 -57 -57 -57 -56 -54 -52 -51 -50 -49 -50 -52 -55 -58 -58 -56 -55 -53 -53 -54 -55 -56 -56 -56 -55 -56 -56 -56 -57 -56 -55 -55 -53 -50 -46 -42 -39 -38 -38 -39 -39 -39 -39 -41 -44 -48 -48 -45 -41 -39 -38 -36 -33 -30 -27 -25 -23 -22 -26 -32 -38 -34 -29 -22 -17 -18 -22 -26 -28 -30 -33 -36 -36 -34 -33 -33 -32 -29 -28 -27 -27 -25 -29 -35 -38 -35 -26 -20 -20 -23 -27 -30 -31 -34 -36 -39 -41 -43 -45 -44 -43 -42 -42 -43 -43 -43 -43 -44 -46 -48 -49 -49 -47 -45 -44 -44 -44 -45 -46 -47 -46 -45 -44 -44 -43 -43 -42 -42 -43 -43 -43 -45 -46 -47 -48 -50 -51 -52 -54 -55 -55 -54 -54 -55 -58 -60 -63 -65 -67 -69 -70 -69 -68 -68 -68 -70 -72 -74 -76 -78 -77 -66 -49 -31 -21 -23 -25 -26 -27 -28 -29 -30 -31 -32 -31 -31 -31 -31 -32 -33 -33 -33 -32 -32 -31 -31 -31 -32 -32 -33 -33 -32 -32 -31 -31 -30 -30 -29 -29 -28 -27 -26 -25 -24 -24 -24 -23 -24 -24 -24 -24 -24 -23 -22 -21 -20 -20 -20 -20 -20 -20 -20 -21 -20 -20 -20 -20 -20 -19 -19 -19 -18 -17 -16 -13 -11 -10 -10 -11 -12 -12 -13 -13 -12 -11 -10 -10 -9 -10 -11 -12 -12 -11 -9 -6 -5 -4 -3 -3 -3 -2 -2 -1 -0 0 1 1 2 2 2 2 2 2 3 3 4 5 7 9 11 13 15 17 19 21 23 24 26 27 28 29 29 29 30 31 32 34 36 38 40 42 42 43 43 43 44 44 45 45 46 46 45 44 44 43 42 41 40 40 40 42 43 44 45 44 43 41 39 38 38 38 38 37 35 34 33 32 32 31 31 30 30 30 31 32 33 33 33 33 33 32 32 31 30 29 28 26 25 25 25 27 27 27 26 25 24 25 27 31 33 34 33 32 31 30 30 30 30 30 30 30 31 31 32 32 32 31 30 29 29 28 29 29 30 30 -55 -52 -50 -49 -49 -49 -50 -51 -54 -56 -58 -59 -60 -60 -59 -57 -55 -54 -53 -52 -52 -52 -51 -50 -48 -47 -48 -50 -52 -54 -56 -55 -53 -52 -52 -54 -55 -56 -56 -57 -57 -57 -57 -57 -57 -57 -56 -54 -53 -50 -45 -41 -39 -37 -37 -38 -40 -40 -41 -41 -44 -47 -50 -47 -43 -39 -36 -34 -31 -29 -27 -24 -20 -16 -17 -22 -28 -32 -30 -26 -19 -14 -17 -20 -23 -25 -27 -32 -33 -30 -29 -28 -28 -26 -24 -23 -23 -22 -22 -28 -35 -36 -30 -21 -19 -22 -26 -29 -31 -33 -36 -38 -40 -42 -44 -45 -45 -44 -43 -44 -46 -46 -46 -46 -46 -47 -48 -48 -48 -47 -46 -45 -44 -45 -45 -47 -47 -47 -46 -45 -45 -44 -44 -43 -43 -43 -44 -44 -46 -47 -48 -48 -49 -50 -51 -53 -55 -56 -55 -55 -56 -59 -62 -64 -67 -69 -71 -71 -72 -71 -71 -70 -71 -72 -74 -75 -77 -78 -75 -62 -42 -24 -24 -26 -27 -28 -28 -29 -30 -31 -32 -32 -32 -32 -32 -33 -33 -33 -33 -33 -32 -31 -31 -31 -32 -32 -33 -33 -33 -32 -32 -31 -31 -31 -30 -30 -29 -28 -26 -25 -24 -24 -23 -23 -23 -24 -24 -23 -23 -22 -20 -19 -19 -18 -19 -19 -19 -20 -20 -21 -21 -20 -20 -20 -20 -19 -19 -18 -18 -17 -15 -13 -11 -10 -10 -11 -12 -12 -13 -12 -12 -11 -10 -9 -9 -10 -11 -12 -11 -10 -7 -6 -5 -4 -4 -3 -3 -2 -2 -1 -1 -0 0 1 1 1 1 2 2 2 2 3 3 5 6 8 11 13 15 17 18 19 21 22 24 25 26 26 26 27 28 28 29 31 33 35 37 38 40 41 43 44 45 45 46 47 47 48 48 47 47 46 44 43 42 41 41 42 43 45 46 46 44 42 40 40 40 41 41 41 39 37 35 34 33 32 31 30 29 30 31 32 33 33 34 35 35 35 35 34 33 31 30 28 27 26 27 27 28 28 26 25 23 23 25 29 32 34 34 32 31 31 31 31 31 30 30 31 31 31 31 31 31 30 30 29 29 29 29 30 30 30 -53 -50 -48 -47 -47 -47 -49 -51 -54 -55 -55 -55 -55 -55 -54 -53 -51 -49 -49 -48 -48 -49 -49 -48 -46 -46 -47 -50 -52 -54 -54 -52 -50 -51 -53 -55 -56 -56 -56 -56 -56 -56 -56 -56 -55 -54 -52 -50 -48 -44 -41 -38 -38 -37 -37 -39 -41 -41 -41 -44 -47 -49 -51 -46 -41 -35 -32 -28 -27 -27 -26 -23 -19 -16 -17 -20 -23 -25 -26 -24 -18 -14 -15 -17 -19 -21 -23 -26 -25 -21 -20 -22 -23 -22 -24 -26 -27 -27 -26 -31 -33 -29 -22 -18 -21 -25 -28 -30 -33 -36 -38 -39 -41 -43 -45 -46 -46 -46 -46 -48 -49 -50 -49 -48 -47 -47 -46 -46 -46 -47 -47 -46 -46 -46 -46 -47 -47 -46 -46 -46 -46 -46 -45 -44 -44 -44 -45 -46 -47 -48 -48 -48 -48 -48 -50 -53 -55 -56 -56 -56 -57 -60 -63 -66 -68 -70 -72 -73 -74 -75 -74 -73 -72 -72 -73 -75 -77 -79 -77 -67 -50 -30 -28 -28 -28 -28 -29 -29 -30 -31 -32 -32 -32 -33 -33 -34 -34 -34 -34 -33 -33 -32 -32 -32 -32 -33 -34 -34 -34 -34 -33 -32 -32 -32 -31 -31 -30 -28 -27 -25 -24 -24 -23 -23 -23 -22 -22 -21 -20 -19 -19 -18 -18 -18 -18 -19 -20 -20 -21 -21 -21 -21 -20 -20 -20 -19 -18 -18 -17 -15 -14 -12 -11 -10 -10 -11 -12 -12 -12 -12 -11 -10 -9 -9 -9 -10 -11 -11 -11 -9 -7 -6 -5 -5 -4 -4 -3 -3 -3 -3 -2 -2 -1 -1 -0 0 1 1 2 2 3 3 4 5 6 9 11 13 15 16 16 17 18 19 20 22 23 23 24 25 26 26 27 28 29 31 33 35 37 40 42 44 45 46 47 48 49 49 50 50 49 48 47 46 44 43 42 42 43 44 45 45 44 41 40 40 41 42 43 43 41 39 37 35 33 32 30 29 29 30 31 31 32 33 34 35 37 38 38 37 36 34 32 30 29 29 29 29 29 28 27 25 23 22 23 27 30 34 35 33 32 32 33 33 32 32 32 31 31 31 31 30 29 29 29 29 29 29 29 30 29 29 -50 -48 -46 -46 -47 -48 -49 -51 -52 -53 -52 -51 -51 -51 -50 -49 -47 -46 -46 -46 -46 -48 -48 -47 -46 -46 -48 -50 -51 -52 -52 -49 -49 -51 -54 -56 -54 -53 -53 -53 -52 -53 -53 -52 -51 -48 -45 -44 -42 -40 -38 -38 -37 -37 -38 -40 -41 -41 -43 -46 -49 -51 -49 -43 -36 -30 -25 -21 -21 -24 -25 -23 -19 -18 -19 -20 -20 -21 -21 -17 -11 -6 -4 -7 -8 -11 -15 -20 -20 -19 -20 -22 -26 -27 -29 -33 -36 -36 -35 -34 -29 -21 -16 -17 -22 -26 -28 -31 -34 -37 -38 -40 -42 -45 -47 -47 -48 -48 -49 -51 -52 -52 -51 -49 -46 -45 -44 -44 -45 -46 -47 -47 -47 -47 -47 -47 -47 -46 -47 -47 -47 -46 -46 -45 -45 -46 -46 -48 -49 -50 -49 -48 -47 -48 -50 -53 -55 -56 -57 -57 -59 -62 -64 -67 -69 -71 -73 -75 -77 -78 -78 -77 -75 -74 -74 -75 -77 -79 -79 -74 -61 -44 -39 -37 -33 -29 -29 -30 -30 -31 -32 -33 -33 -34 -34 -35 -35 -35 -34 -34 -34 -33 -33 -33 -34 -35 -36 -36 -36 -35 -34 -34 -33 -33 -32 -31 -30 -28 -27 -25 -24 -23 -22 -22 -21 -20 -19 -18 -18 -17 -17 -17 -17 -18 -19 -20 -20 -21 -21 -21 -21 -21 -20 -20 -19 -18 -17 -16 -15 -14 -12 -11 -10 -10 -10 -11 -11 -12 -12 -11 -10 -9 -9 -9 -9 -10 -11 -11 -10 -9 -8 -7 -7 -6 -6 -5 -5 -5 -5 -5 -4 -4 -3 -2 -1 0 1 2 3 3 3 4 5 6 7 9 11 13 14 15 15 16 16 17 18 19 20 21 22 23 24 24 24 25 26 27 29 32 35 38 40 43 44 46 47 48 49 50 51 51 51 50 50 48 47 45 44 43 43 43 43 43 42 40 39 39 40 42 43 43 41 40 38 36 33 31 29 28 28 29 30 31 31 32 33 35 37 38 39 39 38 36 34 33 32 31 31 31 30 29 28 26 24 22 21 24 28 32 35 34 34 33 34 35 35 34 33 32 31 30 30 29 28 28 28 28 28 28 29 29 29 28 -47 -46 -45 -46 -48 -49 -50 -51 -51 -50 -48 -48 -48 -48 -48 -46 -45 -44 -45 -46 -46 -47 -48 -47 -47 -47 -47 -48 -48 -48 -48 -48 -49 -51 -53 -52 -49 -48 -49 -50 -51 -49 -49 -48 -45 -43 -40 -39 -38 -37 -37 -36 -36 -36 -38 -40 -41 -42 -45 -47 -48 -48 -43 -36 -29 -24 -21 -17 -18 -21 -22 -21 -18 -18 -18 -18 -18 -17 -14 -9 -4 -0 -0 -3 -5 -10 -16 -22 -25 -25 -26 -27 -31 -33 -34 -38 -40 -39 -34 -29 -24 -18 -16 -19 -23 -26 -29 -32 -35 -38 -39 -42 -45 -48 -49 -50 -49 -49 -49 -51 -51 -51 -50 -47 -44 -43 -44 -44 -45 -46 -47 -49 -50 -50 -49 -49 -48 -48 -48 -48 -48 -48 -47 -47 -47 -47 -48 -49 -50 -51 -50 -48 -47 -48 -50 -54 -56 -57 -58 -59 -60 -63 -65 -67 -69 -72 -74 -77 -80 -81 -82 -81 -80 -79 -78 -77 -77 -79 -80 -79 -73 -60 -52 -48 -39 -30 -30 -32 -31 -31 -32 -33 -34 -35 -35 -35 -35 -35 -35 -35 -35 -35 -35 -35 -36 -37 -38 -39 -38 -37 -36 -35 -34 -34 -33 -32 -30 -28 -26 -25 -23 -22 -21 -20 -18 -17 -16 -15 -15 -15 -15 -16 -17 -18 -20 -20 -21 -21 -21 -21 -20 -20 -20 -19 -18 -17 -16 -14 -13 -12 -11 -10 -9 -9 -10 -10 -11 -12 -12 -11 -9 -8 -8 -9 -10 -11 -11 -11 -10 -9 -9 -8 -8 -8 -7 -7 -7 -7 -7 -7 -6 -6 -5 -3 -2 -0 1 3 3 4 5 5 6 7 8 10 11 12 13 14 15 15 16 16 17 17 18 20 21 22 22 22 22 23 23 25 27 30 33 35 38 40 42 43 44 45 47 48 49 50 50 50 50 50 48 46 45 44 43 43 42 41 40 39 38 38 39 41 42 42 41 40 39 36 33 30 28 27 27 27 28 29 29 30 32 34 36 37 39 40 39 38 36 35 34 33 32 31 30 29 28 26 24 21 17 18 23 27 33 34 34 34 35 36 36 35 34 32 30 29 28 28 28 27 27 26 27 27 28 28 28 28 -45 -44 -45 -46 -47 -49 -50 -51 -50 -48 -46 -46 -46 -46 -45 -44 -43 -43 -45 -45 -45 -47 -48 -49 -49 -47 -46 -46 -45 -44 -45 -47 -49 -50 -49 -46 -44 -45 -48 -50 -48 -45 -44 -42 -40 -37 -36 -35 -35 -35 -34 -34 -33 -35 -38 -41 -44 -46 -46 -45 -44 -41 -36 -28 -22 -18 -14 -12 -14 -17 -19 -17 -14 -13 -13 -13 -12 -10 -6 -4 -2 -1 -2 -5 -8 -14 -20 -26 -29 -31 -31 -31 -32 -35 -36 -38 -37 -32 -24 -22 -20 -19 -18 -21 -24 -26 -30 -34 -37 -39 -41 -43 -46 -50 -52 -51 -49 -48 -49 -51 -50 -49 -47 -45 -43 -43 -44 -45 -46 -47 -49 -51 -52 -52 -52 -51 -50 -50 -50 -50 -50 -50 -50 -50 -49 -49 -49 -50 -51 -52 -51 -48 -48 -49 -52 -55 -57 -58 -59 -60 -62 -65 -66 -68 -70 -73 -76 -79 -82 -83 -84 -84 -84 -84 -82 -81 -79 -79 -81 -82 -80 -71 -60 -52 -41 -31 -32 -35 -35 -33 -32 -33 -34 -35 -35 -35 -35 -35 -35 -35 -36 -36 -37 -38 -38 -39 -40 -41 -41 -40 -38 -36 -35 -34 -33 -31 -30 -28 -26 -24 -22 -21 -19 -17 -16 -15 -13 -13 -13 -13 -14 -15 -17 -18 -20 -20 -21 -21 -20 -20 -19 -19 -18 -18 -17 -15 -14 -13 -11 -10 -9 -9 -8 -9 -9 -10 -11 -12 -11 -10 -9 -8 -8 -9 -10 -11 -11 -11 -10 -10 -10 -10 -10 -9 -9 -9 -9 -9 -10 -9 -9 -8 -6 -4 -2 0 2 4 5 5 6 6 7 8 9 10 11 12 13 14 15 15 16 16 16 17 17 18 19 20 20 20 20 21 22 24 26 28 31 33 35 37 39 40 41 42 44 45 46 47 48 48 48 48 47 46 45 43 42 41 40 39 38 38 37 37 37 39 40 41 41 40 39 36 33 29 26 26 26 25 25 26 27 28 30 32 34 36 37 39 39 38 37 35 34 33 32 31 29 28 27 25 22 15 8 8 13 18 27 31 33 33 34 36 36 36 34 32 29 28 27 27 27 27 26 26 26 26 27 28 27 26 -44 -43 -43 -44 -46 -47 -49 -49 -47 -45 -42 -43 -43 -42 -41 -41 -42 -42 -43 -43 -44 -47 -48 -49 -49 -47 -44 -43 -42 -41 -44 -47 -47 -46 -44 -42 -42 -47 -50 -49 -45 -41 -40 -39 -36 -33 -32 -32 -31 -31 -31 -30 -31 -34 -37 -41 -45 -46 -44 -42 -39 -34 -29 -20 -14 -9 -7 -6 -9 -11 -12 -10 -7 -6 -7 -7 -7 -5 -5 -5 -5 -5 -7 -9 -13 -18 -23 -27 -29 -31 -32 -32 -32 -35 -36 -35 -31 -24 -16 -18 -20 -21 -21 -24 -26 -28 -31 -35 -38 -41 -42 -44 -47 -50 -52 -50 -48 -47 -49 -50 -48 -47 -45 -44 -43 -44 -45 -46 -48 -49 -51 -52 -54 -54 -54 -54 -52 -52 -52 -52 -52 -52 -52 -51 -51 -50 -50 -51 -52 -52 -51 -49 -50 -52 -55 -57 -58 -58 -59 -61 -64 -67 -68 -69 -72 -75 -78 -80 -82 -83 -84 -86 -88 -89 -88 -85 -82 -81 -81 -82 -83 -78 -65 -51 -39 -32 -34 -38 -40 -39 -36 -34 -34 -35 -35 -34 -34 -34 -35 -36 -37 -38 -38 -39 -40 -41 -42 -43 -43 -42 -40 -37 -35 -33 -32 -30 -29 -27 -25 -23 -21 -19 -17 -16 -14 -13 -12 -11 -12 -12 -14 -15 -16 -18 -19 -19 -20 -19 -19 -18 -18 -17 -17 -16 -15 -14 -12 -11 -10 -9 -8 -8 -8 -8 -9 -10 -11 -11 -10 -9 -8 -8 -8 -10 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -12 -12 -12 -11 -9 -7 -4 -2 1 3 4 6 6 7 7 8 9 9 10 10 11 12 13 14 15 15 16 16 16 16 17 17 18 18 18 19 20 21 23 25 27 29 31 32 34 36 37 38 39 41 42 43 44 44 44 44 44 44 43 42 41 40 39 37 36 36 35 35 34 33 35 38 40 40 39 38 36 31 26 21 21 22 22 20 19 24 26 28 30 33 34 35 36 37 37 35 34 32 31 30 28 27 26 24 22 16 5 -6 -8 -2 1 14 24 29 31 31 34 36 36 35 32 29 27 26 26 26 26 26 25 25 25 26 27 27 26 -42 -41 -41 -42 -42 -43 -44 -44 -42 -39 -39 -39 -39 -39 -39 -40 -41 -41 -42 -43 -44 -45 -46 -47 -48 -47 -43 -42 -41 -42 -45 -46 -46 -43 -41 -42 -44 -50 -50 -47 -41 -38 -38 -36 -33 -30 -28 -28 -27 -27 -27 -27 -30 -34 -38 -41 -42 -41 -39 -37 -33 -28 -20 -12 -6 -3 -2 -4 -7 -7 -4 -2 -1 -2 -4 -5 -5 -5 -8 -9 -9 -9 -10 -14 -18 -22 -24 -25 -25 -28 -31 -34 -34 -34 -32 -31 -28 -22 -15 -18 -21 -23 -24 -28 -30 -31 -34 -37 -39 -40 -42 -44 -47 -50 -50 -48 -46 -47 -48 -48 -47 -46 -45 -44 -44 -46 -47 -48 -49 -51 -53 -54 -55 -56 -56 -55 -54 -53 -53 -53 -54 -53 -53 -52 -52 -51 -51 -51 -52 -52 -51 -50 -52 -55 -57 -58 -57 -58 -61 -63 -66 -68 -69 -71 -73 -76 -79 -80 -81 -83 -86 -89 -91 -92 -92 -90 -87 -84 -82 -83 -84 -83 -71 -53 -41 -38 -38 -41 -46 -48 -46 -39 -36 -35 -34 -34 -33 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -44 -44 -42 -40 -38 -35 -32 -30 -29 -27 -25 -23 -22 -20 -18 -16 -15 -13 -12 -11 -11 -12 -13 -14 -15 -16 -17 -17 -18 -18 -18 -17 -17 -16 -16 -15 -14 -13 -12 -11 -10 -9 -8 -7 -7 -7 -8 -9 -10 -11 -11 -9 -8 -8 -8 -9 -10 -11 -12 -12 -12 -11 -12 -12 -13 -13 -13 -13 -13 -14 -14 -14 -14 -12 -10 -7 -4 -1 1 3 5 6 6 7 7 8 8 9 9 9 10 11 12 13 14 14 14 15 15 15 15 15 16 16 17 18 19 20 22 24 26 27 29 30 32 33 34 35 37 38 39 40 41 41 41 41 41 40 39 37 36 36 35 33 32 31 30 30 28 27 28 32 36 38 36 33 30 26 19 10 10 14 15 12 8 18 22 25 28 30 31 32 32 33 33 32 30 28 27 26 25 24 23 21 17 8 -7 -18 -21 -17 -14 -3 10 21 28 29 31 34 35 35 33 30 27 25 25 25 26 26 25 25 25 26 26 26 25 -41 -41 -40 -39 -38 -38 -39 -39 -38 -37 -37 -36 -36 -37 -38 -38 -39 -41 -42 -42 -42 -42 -44 -47 -48 -48 -43 -41 -41 -42 -45 -45 -45 -43 -41 -43 -47 -49 -46 -42 -39 -39 -37 -34 -30 -27 -26 -25 -25 -25 -25 -26 -30 -35 -37 -38 -37 -35 -33 -30 -26 -18 -10 -3 -1 -1 -3 -5 -7 -4 1 4 2 -3 -5 -5 -6 -8 -12 -13 -12 -12 -14 -17 -22 -25 -25 -24 -22 -27 -34 -38 -37 -30 -26 -29 -30 -27 -19 -19 -21 -24 -28 -32 -33 -35 -36 -37 -38 -40 -42 -45 -47 -49 -48 -46 -45 -45 -46 -46 -46 -45 -45 -45 -46 -48 -49 -50 -51 -53 -54 -55 -56 -56 -56 -55 -54 -54 -53 -54 -54 -53 -53 -52 -52 -51 -52 -53 -53 -52 -51 -52 -54 -56 -58 -57 -57 -59 -61 -65 -67 -69 -71 -72 -74 -77 -79 -80 -82 -84 -87 -89 -92 -94 -95 -95 -91 -87 -85 -84 -85 -85 -77 -64 -55 -51 -48 -47 -51 -57 -60 -52 -44 -39 -36 -34 -33 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -44 -44 -42 -40 -37 -34 -32 -29 -27 -25 -23 -22 -20 -18 -17 -15 -14 -13 -12 -12 -12 -12 -13 -14 -14 -15 -15 -16 -16 -16 -16 -16 -16 -15 -14 -14 -13 -12 -11 -10 -9 -8 -7 -7 -7 -7 -8 -9 -10 -10 -9 -8 -8 -8 -9 -10 -11 -12 -12 -12 -12 -13 -13 -14 -14 -14 -15 -15 -16 -16 -17 -16 -15 -13 -11 -7 -4 -1 1 3 4 5 5 5 6 6 7 7 7 7 8 10 11 11 12 12 12 13 13 13 13 13 14 15 15 16 17 18 20 21 23 25 27 28 30 31 32 33 34 35 36 37 38 39 39 39 38 37 35 33 31 30 29 28 26 24 22 21 19 16 17 20 25 31 27 20 16 13 8 -2 -3 1 4 0 -2 9 15 18 23 27 28 28 28 28 28 28 26 24 22 21 20 20 19 17 13 0 -16 -25 -25 -20 -12 -10 -3 11 25 26 29 32 34 35 33 30 28 25 24 25 26 26 26 25 25 25 26 26 25 -41 -40 -38 -36 -35 -35 -36 -36 -36 -36 -35 -34 -34 -34 -35 -36 -38 -41 -41 -40 -39 -41 -44 -48 -50 -48 -44 -41 -42 -43 -45 -43 -44 -42 -42 -44 -47 -45 -42 -39 -40 -41 -38 -33 -29 -26 -26 -26 -26 -27 -28 -30 -33 -35 -35 -35 -34 -32 -28 -22 -15 -6 0 2 -1 -4 -6 -10 -9 -3 3 4 -0 -5 -6 -7 -9 -12 -14 -14 -14 -14 -17 -21 -24 -26 -26 -25 -28 -34 -40 -40 -31 -21 -22 -30 -36 -33 -22 -19 -21 -26 -30 -32 -33 -34 -35 -36 -37 -41 -44 -46 -47 -47 -45 -44 -43 -42 -43 -44 -44 -44 -46 -47 -49 -51 -52 -53 -53 -54 -56 -56 -57 -56 -56 -55 -54 -54 -53 -53 -53 -53 -53 -53 -52 -52 -53 -54 -54 -54 -53 -54 -56 -57 -58 -58 -58 -60 -62 -65 -68 -70 -72 -74 -76 -78 -79 -81 -82 -84 -86 -88 -90 -93 -95 -96 -95 -91 -88 -86 -85 -86 -83 -77 -73 -72 -68 -59 -56 -61 -70 -68 -58 -49 -42 -36 -34 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -43 -43 -41 -39 -36 -34 -31 -29 -26 -24 -22 -21 -19 -17 -16 -15 -14 -14 -13 -13 -13 -13 -13 -13 -14 -14 -14 -15 -15 -15 -15 -15 -15 -14 -13 -13 -12 -11 -11 -10 -9 -8 -7 -7 -7 -7 -8 -9 -10 -9 -8 -8 -8 -9 -10 -11 -12 -12 -13 -13 -13 -14 -15 -15 -16 -16 -17 -17 -18 -19 -19 -18 -17 -14 -11 -8 -5 -2 -0 1 2 2 3 3 4 4 4 5 5 6 7 8 9 9 9 9 9 10 11 11 11 12 12 13 14 15 15 16 17 18 20 23 24 26 28 29 30 31 31 31 32 33 34 36 36 36 35 33 30 27 25 23 23 22 19 15 11 7 5 3 2 3 7 18 13 3 -3 -3 -2 1 1 -3 -9 -12 -11 -2 3 6 14 21 24 24 24 23 23 23 22 20 18 17 16 15 15 14 9 -5 -19 -25 -22 -19 -5 -2 0 8 22 23 26 29 32 34 34 31 29 26 25 25 26 27 27 26 25 25 25 25 25 -40 -38 -36 -34 -33 -33 -33 -34 -35 -35 -33 -32 -32 -32 -32 -34 -39 -39 -38 -37 -38 -41 -46 -50 -52 -49 -44 -41 -42 -44 -45 -42 -42 -41 -41 -42 -43 -40 -39 -40 -42 -44 -41 -36 -31 -29 -30 -30 -32 -34 -36 -36 -35 -34 -33 -32 -31 -29 -21 -11 -3 2 2 -1 -4 -7 -10 -14 -9 -2 3 3 -2 -6 -6 -8 -10 -12 -13 -14 -15 -18 -22 -25 -28 -29 -30 -29 -33 -40 -40 -33 -20 -17 -26 -36 -39 -34 -23 -19 -22 -26 -28 -29 -31 -32 -33 -36 -39 -44 -45 -45 -44 -43 -44 -43 -42 -41 -42 -43 -44 -45 -47 -48 -50 -52 -53 -54 -54 -55 -56 -57 -57 -57 -56 -55 -54 -53 -53 -54 -53 -52 -53 -54 -54 -53 -55 -55 -55 -55 -55 -56 -57 -58 -59 -59 -60 -61 -63 -66 -68 -70 -72 -75 -77 -80 -80 -82 -83 -84 -85 -85 -88 -90 -93 -95 -95 -94 -91 -89 -87 -87 -87 -88 -90 -94 -95 -80 -61 -53 -63 -77 -76 -69 -57 -44 -37 -35 -35 -36 -37 -39 -39 -40 -41 -42 -43 -43 -42 -40 -38 -35 -33 -31 -28 -26 -24 -22 -20 -18 -17 -16 -16 -15 -14 -14 -14 -14 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -14 -14 -13 -13 -12 -11 -11 -10 -10 -9 -8 -7 -7 -7 -8 -8 -9 -9 -8 -8 -8 -8 -10 -11 -12 -13 -13 -13 -14 -14 -15 -16 -16 -17 -18 -18 -19 -20 -20 -20 -19 -18 -15 -13 -10 -7 -6 -4 -3 -2 -1 0 1 1 1 1 2 3 4 5 6 6 6 6 6 7 8 9 10 10 10 10 11 12 13 13 14 14 15 17 20 22 23 25 26 27 27 27 27 27 28 30 31 32 31 30 27 24 21 17 15 13 12 10 5 -3 -12 -13 -13 -15 -17 -15 -1 -5 -11 -13 -10 -4 8 10 4 -8 -17 -17 -14 -12 -10 -1 11 18 21 20 19 19 19 19 18 16 14 12 11 10 10 6 -6 -17 -21 -16 -20 -7 4 12 15 19 21 23 26 29 32 33 32 30 27 25 26 27 28 28 26 25 24 24 25 25 -38 -36 -34 -32 -32 -32 -31 -33 -34 -34 -32 -30 -31 -31 -32 -35 -38 -37 -35 -35 -38 -44 -49 -52 -52 -49 -43 -41 -42 -44 -45 -41 -41 -39 -38 -38 -37 -38 -40 -42 -44 -46 -45 -42 -38 -36 -35 -36 -38 -40 -41 -41 -37 -30 -24 -21 -19 -14 -4 2 3 2 0 -3 -7 -11 -14 -16 -8 -0 3 2 -3 -4 -5 -6 -8 -10 -12 -14 -17 -20 -24 -27 -29 -30 -30 -31 -36 -40 -35 -25 -16 -22 -35 -41 -40 -32 -22 -21 -23 -26 -28 -29 -31 -33 -35 -39 -43 -45 -43 -41 -40 -41 -45 -45 -42 -40 -41 -43 -45 -46 -47 -49 -50 -52 -53 -53 -54 -55 -57 -58 -58 -57 -55 -54 -54 -54 -54 -54 -53 -53 -53 -54 -55 -55 -55 -55 -55 -55 -56 -58 -59 -60 -60 -61 -62 -63 -64 -66 -68 -69 -72 -75 -78 -80 -81 -83 -83 -83 -82 -83 -85 -88 -91 -93 -95 -95 -94 -93 -91 -89 -88 -89 -92 -97 -99 -90 -72 -56 -51 -65 -83 -90 -83 -64 -49 -41 -37 -36 -37 -39 -40 -41 -42 -44 -44 -43 -41 -39 -36 -34 -32 -30 -28 -26 -24 -22 -20 -18 -17 -17 -16 -16 -15 -14 -14 -14 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -13 -13 -12 -12 -11 -11 -10 -10 -9 -8 -8 -7 -8 -8 -9 -9 -9 -8 -8 -8 -10 -11 -12 -13 -13 -14 -14 -15 -15 -16 -17 -17 -18 -19 -20 -21 -22 -22 -22 -21 -19 -16 -14 -12 -11 -10 -9 -7 -5 -3 -2 -2 -1 -1 -1 -0 1 2 4 4 4 4 3 4 5 7 7 8 8 9 9 10 10 11 12 11 11 12 14 16 18 20 21 21 22 22 22 21 21 22 23 25 25 25 23 21 18 15 11 6 1 -5 -7 -12 -22 -35 -33 -28 -30 -35 -34 -24 -25 -21 -14 -8 -1 5 5 -1 -11 -22 -23 -19 -19 -23 -20 -5 9 17 17 15 15 15 16 15 13 11 9 7 5 3 2 -4 -13 -17 -10 -23 -16 1 17 18 18 18 19 22 26 30 32 32 31 28 26 26 27 28 28 27 25 23 23 23 24 -35 -33 -32 -31 -31 -30 -30 -32 -33 -33 -31 -30 -30 -31 -34 -37 -38 -36 -34 -35 -40 -46 -50 -51 -50 -48 -42 -40 -42 -44 -44 -42 -39 -36 -35 -34 -34 -36 -38 -40 -41 -42 -43 -43 -41 -39 -39 -39 -38 -38 -36 -33 -25 -17 -12 -10 -8 0 6 7 5 2 0 -3 -8 -13 -15 -13 -5 1 4 2 -2 -2 -3 -5 -7 -9 -11 -14 -17 -21 -24 -25 -26 -27 -29 -32 -37 -37 -30 -21 -19 -30 -40 -42 -37 -28 -21 -21 -24 -27 -28 -29 -31 -34 -37 -40 -43 -43 -40 -38 -39 -44 -49 -45 -41 -39 -41 -43 -46 -47 -48 -50 -51 -52 -52 -53 -55 -56 -57 -58 -57 -56 -55 -54 -54 -54 -54 -54 -54 -54 -54 -55 -55 -55 -55 -54 -55 -56 -58 -60 -61 -62 -61 -61 -62 -63 -64 -66 -67 -69 -72 -75 -77 -79 -81 -83 -83 -82 -81 -81 -84 -87 -89 -92 -94 -95 -96 -97 -96 -93 -91 -91 -92 -96 -100 -99 -91 -76 -59 -56 -68 -84 -93 -89 -74 -60 -47 -39 -37 -39 -41 -43 -45 -46 -46 -43 -40 -37 -34 -32 -30 -29 -28 -27 -25 -22 -20 -19 -18 -17 -16 -16 -15 -14 -14 -14 -13 -13 -13 -13 -13 -13 -14 -14 -13 -13 -13 -12 -12 -11 -11 -11 -11 -10 -10 -9 -8 -8 -8 -9 -9 -10 -9 -9 -8 -8 -9 -10 -12 -13 -13 -13 -14 -15 -15 -16 -17 -18 -19 -20 -20 -21 -22 -23 -23 -23 -21 -19 -16 -14 -14 -14 -14 -13 -10 -8 -5 -4 -3 -3 -3 -3 -3 -1 0 2 2 2 2 2 2 3 4 5 6 6 7 7 8 9 9 10 10 9 9 11 13 14 15 15 15 15 15 15 15 15 15 16 17 17 17 16 14 12 9 5 -1 -12 -26 -32 -36 -42 -49 -40 -28 -30 -43 -49 -46 -42 -32 -19 -9 -5 -10 -17 -22 -27 -35 -34 -28 -25 -32 -33 -23 -6 9 14 13 12 12 12 12 10 7 5 2 -2 -9 -11 -14 -18 -21 -12 -25 -23 -7 14 17 16 16 16 18 22 26 30 31 31 29 26 25 25 26 28 27 24 22 21 21 22 -32 -31 -31 -31 -31 -30 -30 -31 -32 -31 -30 -29 -30 -32 -36 -39 -39 -35 -34 -37 -42 -46 -46 -47 -48 -46 -41 -40 -42 -43 -43 -40 -35 -34 -35 -35 -34 -34 -34 -33 -34 -36 -36 -35 -33 -33 -33 -32 -30 -27 -24 -19 -12 -8 -7 -5 -1 6 8 6 4 3 2 -2 -9 -14 -13 -8 -1 3 4 3 1 0 -2 -4 -6 -8 -11 -15 -19 -21 -21 -20 -21 -23 -27 -31 -35 -33 -26 -21 -23 -33 -40 -40 -34 -24 -20 -22 -25 -27 -28 -29 -32 -35 -37 -39 -40 -38 -37 -38 -43 -50 -50 -42 -38 -38 -40 -43 -45 -47 -48 -49 -51 -51 -52 -54 -56 -57 -57 -57 -56 -55 -54 -54 -54 -53 -52 -53 -53 -54 -55 -55 -55 -54 -53 -54 -55 -57 -59 -61 -62 -62 -61 -61 -63 -64 -64 -66 -68 -70 -73 -75 -76 -78 -81 -82 -82 -81 -80 -81 -83 -86 -88 -91 -93 -96 -98 -99 -100 -98 -96 -94 -93 -95 -98 -102 -101 -94 -79 -65 -64 -72 -83 -91 -94 -88 -72 -53 -40 -41 -44 -47 -48 -49 -47 -43 -38 -34 -31 -29 -28 -28 -27 -27 -25 -23 -21 -19 -18 -17 -16 -15 -15 -14 -14 -14 -14 -14 -14 -14 -14 -13 -13 -13 -12 -12 -12 -11 -11 -11 -11 -11 -10 -10 -10 -9 -9 -9 -9 -10 -10 -10 -10 -9 -9 -9 -10 -11 -12 -13 -13 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -23 -24 -24 -24 -21 -18 -15 -14 -14 -15 -15 -14 -12 -9 -6 -5 -4 -4 -5 -6 -5 -4 -2 -0 0 0 0 1 1 2 2 3 3 4 5 5 6 6 7 8 7 7 7 7 8 9 9 9 8 8 8 8 9 9 9 9 9 9 9 9 8 7 5 2 -6 -21 -42 -52 -55 -55 -54 -44 -30 -32 -48 -55 -55 -52 -46 -34 -20 -18 -30 -41 -46 -47 -49 -47 -43 -40 -42 -41 -35 -22 -5 6 8 8 8 7 6 4 -1 -5 -7 -9 -21 -26 -28 -29 -29 -22 -27 -22 -8 8 13 14 14 13 14 18 22 26 29 29 28 26 23 21 21 27 26 23 21 19 18 19 -29 -30 -30 -31 -31 -31 -31 -31 -31 -31 -30 -30 -30 -32 -37 -41 -39 -36 -37 -39 -41 -40 -41 -44 -46 -46 -41 -39 -40 -40 -39 -36 -35 -37 -38 -37 -34 -31 -29 -28 -29 -28 -26 -25 -24 -24 -23 -22 -20 -18 -14 -9 -5 -5 -5 -3 2 6 5 2 1 1 1 -5 -11 -14 -10 -2 3 5 5 4 3 1 -2 -4 -5 -7 -12 -17 -20 -20 -17 -16 -19 -22 -26 -30 -31 -29 -24 -22 -25 -32 -38 -39 -32 -22 -18 -21 -25 -27 -27 -29 -33 -35 -36 -36 -36 -35 -36 -41 -48 -52 -45 -37 -35 -37 -41 -44 -45 -45 -46 -48 -49 -50 -52 -55 -57 -57 -57 -56 -56 -55 -55 -55 -54 -52 -51 -51 -52 -54 -55 -55 -55 -55 -55 -56 -57 -58 -59 -60 -61 -61 -61 -62 -63 -64 -65 -66 -70 -73 -75 -76 -76 -78 -80 -81 -81 -80 -80 -81 -83 -86 -88 -90 -93 -96 -98 -101 -103 -103 -101 -98 -96 -95 -97 -100 -102 -102 -97 -85 -77 -74 -73 -71 -84 -96 -92 -74 -52 -45 -48 -51 -52 -50 -45 -40 -35 -31 -29 -27 -27 -27 -27 -26 -25 -24 -22 -20 -19 -18 -16 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -13 -13 -12 -12 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -10 -11 -11 -12 -11 -11 -11 -10 -11 -11 -11 -12 -12 -13 -13 -14 -15 -16 -17 -19 -20 -21 -22 -23 -24 -25 -25 -25 -23 -20 -16 -13 -12 -13 -14 -14 -13 -12 -10 -8 -6 -5 -5 -6 -7 -7 -6 -5 -3 -1 -1 -1 -1 -0 0 0 1 1 2 2 3 3 3 4 4 5 4 4 4 4 4 4 3 2 2 2 3 4 4 4 4 4 4 3 3 2 2 1 -2 -7 -23 -47 -60 -62 -57 -50 -42 -33 -35 -53 -59 -59 -54 -44 -30 -22 -30 -44 -55 -59 -59 -59 -58 -56 -53 -48 -42 -41 -36 -25 -10 -2 1 0 -2 -3 -5 -14 -20 -20 -18 -30 -34 -36 -35 -35 -33 -31 -21 -6 1 8 12 12 11 11 14 18 22 25 26 25 23 20 16 12 23 24 22 19 16 14 14 -28 -29 -29 -30 -30 -30 -30 -30 -30 -30 -30 -29 -28 -31 -35 -39 -38 -37 -36 -37 -37 -37 -38 -42 -45 -44 -39 -36 -36 -36 -36 -36 -40 -41 -39 -35 -30 -27 -26 -25 -23 -20 -18 -18 -18 -18 -16 -15 -14 -11 -8 -4 -3 -4 -2 -0 2 3 1 -2 -3 -3 -5 -10 -15 -14 -7 3 6 7 6 6 5 2 -0 -1 -2 -6 -13 -18 -20 -17 -13 -15 -19 -22 -25 -26 -26 -24 -23 -23 -26 -31 -36 -38 -34 -25 -18 -20 -23 -25 -27 -30 -34 -35 -34 -33 -33 -35 -39 -45 -49 -47 -37 -33 -34 -38 -42 -45 -44 -43 -44 -46 -47 -49 -52 -55 -57 -56 -56 -55 -56 -56 -56 -55 -54 -52 -50 -50 -52 -53 -54 -55 -56 -57 -57 -58 -58 -58 -58 -59 -60 -61 -62 -63 -64 -65 -66 -68 -71 -74 -75 -76 -76 -78 -79 -79 -79 -79 -80 -82 -84 -86 -88 -90 -93 -95 -98 -102 -105 -106 -105 -103 -99 -97 -96 -97 -100 -102 -104 -101 -95 -84 -70 -55 -69 -88 -94 -85 -66 -52 -52 -53 -52 -47 -40 -35 -31 -29 -27 -26 -26 -26 -26 -26 -25 -24 -23 -21 -20 -18 -16 -15 -14 -14 -14 -15 -15 -15 -15 -15 -14 -13 -13 -12 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -11 -11 -12 -13 -13 -13 -13 -13 -12 -12 -12 -12 -12 -12 -12 -13 -13 -14 -15 -16 -18 -19 -21 -22 -23 -24 -25 -26 -26 -25 -22 -18 -14 -12 -12 -12 -12 -12 -12 -12 -11 -9 -8 -7 -6 -7 -8 -9 -8 -7 -5 -3 -2 -2 -2 -2 -1 -1 -1 -1 -0 0 0 0 -0 -0 0 1 1 2 2 1 0 -1 -2 -2 -3 -2 -1 -0 1 1 1 0 -1 -1 -2 -3 -4 -5 -6 -9 -20 -40 -56 -61 -52 -39 -35 -35 -42 -57 -61 -61 -55 -42 -24 -27 -43 -57 -62 -63 -64 -64 -64 -64 -61 -51 -39 -37 -39 -35 -24 -18 -13 -12 -14 -18 -18 -27 -35 -36 -30 -35 -37 -38 -38 -38 -37 -35 -27 -17 -13 -0 8 11 9 9 11 14 18 21 22 22 20 18 13 7 18 21 19 17 12 7 5 -27 -27 -28 -28 -28 -28 -29 -29 -29 -29 -28 -27 -26 -29 -32 -35 -36 -35 -35 -35 -36 -37 -38 -41 -43 -42 -37 -33 -32 -33 -35 -41 -45 -42 -35 -28 -23 -22 -21 -19 -17 -15 -14 -16 -16 -15 -13 -12 -10 -7 -4 -3 -2 -0 2 2 1 1 -2 -5 -8 -10 -13 -16 -17 -12 -2 6 6 6 6 6 5 2 1 0 -2 -7 -14 -18 -18 -14 -11 -15 -18 -20 -20 -19 -19 -21 -23 -24 -26 -28 -31 -37 -40 -34 -22 -20 -22 -25 -29 -32 -33 -32 -31 -32 -35 -38 -41 -45 -45 -38 -30 -31 -35 -41 -46 -46 -42 -41 -41 -44 -45 -48 -51 -54 -55 -55 -54 -55 -55 -56 -56 -56 -54 -51 -50 -49 -51 -53 -54 -56 -57 -58 -59 -59 -58 -58 -58 -59 -61 -62 -63 -63 -64 -65 -66 -68 -71 -73 -75 -76 -77 -78 -78 -78 -79 -79 -80 -82 -84 -86 -87 -89 -92 -95 -98 -102 -105 -108 -109 -107 -104 -99 -97 -97 -98 -101 -103 -106 -103 -91 -72 -49 -57 -71 -80 -81 -73 -59 -56 -54 -49 -40 -33 -29 -28 -27 -27 -27 -27 -26 -26 -26 -25 -24 -23 -22 -20 -18 -17 -16 -15 -15 -15 -15 -15 -16 -16 -15 -14 -14 -13 -12 -12 -12 -11 -11 -11 -10 -10 -10 -10 -11 -11 -12 -13 -14 -15 -15 -15 -15 -14 -14 -14 -13 -13 -13 -12 -13 -13 -14 -14 -15 -17 -18 -20 -21 -22 -24 -25 -27 -27 -26 -24 -20 -16 -13 -12 -12 -12 -12 -12 -11 -11 -11 -11 -10 -9 -8 -8 -9 -10 -9 -8 -6 -4 -4 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -3 -4 -4 -4 -3 -2 -0 1 -0 -2 -3 -3 -4 -5 -5 -5 -4 -4 -3 -3 -4 -5 -6 -7 -9 -10 -12 -13 -14 -18 -30 -45 -56 -44 -32 -33 -41 -52 -63 -65 -64 -59 -48 -31 -33 -47 -58 -63 -64 -67 -67 -66 -65 -64 -53 -37 -32 -35 -35 -28 -27 -27 -28 -31 -36 -33 -37 -45 -45 -41 -39 -38 -39 -39 -38 -36 -35 -34 -31 -27 -13 1 9 8 7 9 11 14 17 18 18 17 15 11 8 12 15 16 12 6 -2 -6 -25 -25 -25 -25 -26 -26 -27 -27 -27 -26 -25 -24 -25 -27 -30 -34 -35 -34 -34 -35 -36 -37 -38 -40 -40 -39 -35 -31 -29 -31 -36 -45 -45 -35 -26 -19 -16 -16 -14 -12 -11 -11 -12 -13 -13 -12 -12 -11 -7 -4 -2 -2 -0 4 5 4 2 0 -3 -6 -9 -12 -15 -15 -13 -7 1 6 5 5 5 6 6 3 1 -2 -7 -12 -17 -18 -14 -10 -10 -13 -14 -14 -13 -13 -16 -19 -21 -22 -24 -25 -30 -40 -47 -43 -26 -20 -21 -26 -31 -32 -32 -31 -32 -34 -38 -40 -39 -39 -38 -31 -28 -31 -38 -45 -49 -44 -39 -38 -40 -42 -45 -48 -51 -53 -54 -53 -53 -54 -55 -56 -57 -56 -53 -51 -48 -49 -50 -52 -54 -56 -57 -58 -58 -58 -58 -58 -58 -60 -62 -62 -62 -62 -64 -65 -67 -69 -71 -73 -75 -76 -77 -77 -78 -79 -80 -80 -82 -84 -85 -86 -87 -88 -91 -94 -98 -101 -104 -108 -110 -111 -108 -103 -99 -98 -98 -99 -101 -104 -103 -93 -74 -48 -50 -57 -67 -76 -81 -68 -59 -52 -44 -33 -27 -25 -25 -26 -27 -28 -28 -28 -28 -27 -26 -25 -23 -22 -20 -19 -18 -17 -16 -16 -16 -16 -16 -16 -16 -16 -15 -14 -13 -13 -12 -12 -12 -12 -12 -12 -11 -12 -12 -12 -13 -14 -15 -16 -17 -17 -17 -17 -16 -16 -15 -14 -14 -13 -13 -13 -13 -14 -14 -15 -17 -18 -19 -21 -22 -25 -27 -29 -29 -27 -24 -19 -15 -13 -13 -14 -14 -14 -13 -12 -11 -12 -12 -12 -11 -10 -9 -10 -10 -10 -9 -8 -6 -5 -5 -5 -4 -4 -3 -3 -3 -3 -4 -5 -6 -7 -8 -9 -8 -5 -2 -0 -1 -2 -3 -4 -4 -6 -8 -9 -10 -10 -9 -9 -9 -10 -11 -12 -14 -16 -19 -21 -23 -25 -32 -41 -50 -43 -44 -50 -58 -66 -69 -68 -67 -64 -58 -47 -43 -49 -54 -54 -57 -65 -66 -63 -60 -65 -58 -42 -33 -35 -41 -34 -31 -32 -38 -43 -44 -45 -48 -51 -49 -45 -39 -37 -41 -42 -38 -33 -33 -36 -38 -33 -19 -3 9 8 7 7 8 10 13 13 13 12 9 5 -0 0 5 8 5 -4 -11 -11 -24 -23 -23 -22 -23 -24 -25 -24 -24 -23 -23 -24 -24 -27 -31 -35 -35 -35 -35 -36 -36 -37 -38 -37 -36 -34 -32 -28 -26 -29 -36 -42 -35 -23 -15 -13 -12 -10 -7 -6 -7 -9 -11 -12 -10 -10 -9 -8 -4 -3 -3 -3 1 6 7 5 4 2 -1 -2 -5 -7 -10 -9 -8 -4 0 1 1 3 6 7 6 3 -0 -4 -8 -13 -15 -12 -8 -7 -8 -11 -11 -11 -12 -13 -16 -17 -19 -21 -25 -29 -35 -44 -45 -36 -20 -18 -21 -26 -30 -30 -31 -32 -33 -35 -36 -34 -33 -33 -33 -29 -28 -32 -41 -48 -48 -39 -36 -36 -39 -42 -45 -47 -50 -52 -52 -51 -51 -52 -54 -56 -57 -56 -52 -49 -47 -48 -50 -51 -53 -55 -57 -57 -57 -56 -57 -57 -59 -60 -62 -62 -62 -62 -64 -66 -69 -71 -72 -74 -75 -76 -77 -78 -79 -80 -81 -81 -83 -84 -86 -86 -87 -88 -90 -93 -96 -99 -103 -107 -110 -112 -111 -106 -101 -98 -98 -99 -100 -101 -100 -92 -74 -50 -49 -55 -67 -83 -97 -83 -67 -52 -41 -31 -25 -24 -25 -27 -28 -30 -31 -32 -31 -30 -28 -26 -24 -22 -20 -19 -18 -18 -18 -17 -17 -17 -17 -17 -17 -16 -15 -15 -14 -14 -13 -13 -13 -13 -13 -13 -13 -14 -14 -15 -16 -17 -17 -18 -18 -19 -19 -18 -18 -17 -16 -15 -15 -14 -14 -13 -13 -13 -14 -15 -16 -18 -19 -20 -23 -25 -28 -30 -31 -29 -25 -19 -15 -14 -14 -16 -17 -16 -15 -14 -13 -13 -14 -14 -14 -12 -11 -11 -11 -11 -10 -9 -8 -7 -6 -6 -6 -5 -5 -5 -5 -5 -6 -7 -9 -10 -11 -12 -11 -9 -6 -2 -1 -2 -3 -5 -6 -9 -13 -16 -17 -18 -17 -16 -16 -16 -17 -18 -20 -22 -26 -30 -34 -37 -40 -43 -47 -52 -66 -75 -78 -77 -74 -72 -70 -69 -67 -61 -56 -55 -53 -47 -50 -61 -64 -61 -56 -64 -61 -49 -40 -44 -54 -46 -37 -32 -38 -45 -44 -48 -53 -54 -53 -48 -40 -38 -44 -45 -40 -31 -30 -36 -39 -34 -21 -5 9 9 7 6 6 7 9 8 6 3 -0 -4 -11 -11 -6 -4 -7 -15 -15 -6 -24 -21 -20 -20 -21 -22 -22 -22 -22 -23 -24 -25 -26 -30 -34 -36 -36 -36 -36 -36 -36 -36 -36 -34 -32 -29 -27 -24 -22 -25 -30 -31 -22 -13 -9 -8 -8 -6 -5 -4 -5 -8 -11 -9 -7 -6 -5 -4 -2 -3 -4 -3 3 8 9 8 6 4 4 4 4 2 -1 -2 -3 -2 -1 -2 -1 2 5 6 5 3 1 -1 -5 -9 -10 -8 -7 -8 -10 -11 -10 -11 -13 -15 -16 -19 -22 -26 -30 -32 -37 -42 -38 -24 -12 -15 -20 -25 -28 -29 -30 -30 -30 -30 -31 -31 -31 -31 -29 -27 -30 -37 -44 -47 -41 -33 -33 -36 -39 -42 -44 -46 -48 -50 -51 -50 -50 -51 -53 -55 -57 -55 -51 -47 -46 -47 -49 -51 -52 -54 -55 -55 -55 -54 -55 -57 -58 -60 -61 -61 -62 -63 -65 -67 -70 -72 -74 -75 -76 -77 -77 -79 -80 -81 -82 -82 -84 -85 -86 -87 -87 -88 -90 -92 -95 -98 -102 -106 -109 -111 -112 -108 -102 -97 -95 -96 -97 -96 -93 -84 -69 -53 -51 -52 -59 -73 -93 -94 -79 -60 -45 -37 -30 -28 -28 -30 -31 -33 -34 -35 -35 -34 -31 -28 -25 -22 -20 -20 -19 -19 -19 -19 -19 -19 -18 -18 -18 -17 -17 -16 -16 -15 -14 -14 -14 -14 -15 -15 -16 -17 -17 -18 -18 -19 -19 -19 -20 -20 -20 -20 -19 -18 -17 -17 -16 -15 -14 -13 -13 -13 -13 -14 -15 -17 -18 -20 -23 -26 -29 -31 -32 -31 -26 -21 -16 -15 -16 -18 -19 -19 -18 -16 -15 -15 -15 -16 -16 -16 -15 -14 -14 -13 -13 -12 -10 -9 -9 -8 -8 -7 -7 -7 -7 -7 -8 -10 -11 -12 -13 -14 -14 -13 -10 -7 -4 -3 -4 -7 -9 -13 -18 -22 -24 -25 -25 -24 -23 -23 -23 -24 -26 -29 -33 -39 -45 -51 -54 -56 -57 -63 -76 -84 -85 -81 -79 -77 -75 -73 -71 -69 -66 -63 -58 -52 -55 -62 -66 -66 -64 -68 -65 -56 -49 -52 -62 -59 -48 -37 -38 -44 -48 -53 -57 -57 -55 -52 -48 -46 -49 -49 -43 -35 -31 -36 -35 -33 -24 -9 6 7 6 4 4 4 4 3 -4 -12 -14 -16 -20 -18 -15 -17 -19 -21 -15 1 -23 -19 -18 -18 -19 -21 -21 -21 -23 -25 -26 -27 -30 -33 -35 -37 -36 -36 -35 -35 -34 -34 -33 -31 -28 -25 -22 -19 -18 -20 -22 -22 -15 -8 -5 -5 -6 -4 -2 -2 -4 -8 -9 -5 -2 -1 -0 -0 -0 -1 -2 -1 5 10 11 9 7 6 8 10 10 9 7 5 3 2 1 -1 -3 -2 1 3 4 5 4 1 -3 -7 -9 -11 -12 -15 -16 -15 -14 -15 -18 -19 -20 -24 -29 -32 -32 -30 -34 -38 -32 -19 -8 -13 -19 -24 -26 -29 -29 -27 -27 -28 -29 -32 -32 -29 -27 -28 -34 -41 -45 -42 -33 -30 -32 -35 -38 -41 -43 -45 -47 -49 -50 -49 -50 -51 -52 -54 -54 -52 -49 -46 -46 -47 -48 -50 -51 -52 -53 -53 -53 -53 -54 -56 -58 -60 -61 -61 -62 -65 -67 -69 -71 -73 -74 -76 -77 -77 -77 -79 -81 -82 -83 -83 -85 -86 -87 -87 -88 -89 -90 -92 -95 -98 -102 -105 -108 -110 -111 -108 -102 -96 -93 -92 -93 -89 -78 -66 -56 -53 -52 -50 -48 -49 -59 -77 -82 -75 -60 -52 -43 -38 -36 -35 -37 -38 -38 -38 -38 -37 -33 -30 -27 -24 -22 -21 -21 -21 -21 -20 -20 -20 -21 -20 -20 -19 -19 -18 -17 -17 -16 -15 -15 -16 -16 -17 -18 -19 -20 -20 -20 -21 -21 -21 -21 -21 -21 -21 -20 -19 -19 -18 -17 -16 -14 -13 -12 -12 -11 -12 -14 -16 -18 -20 -23 -26 -29 -32 -34 -33 -28 -22 -18 -16 -17 -20 -22 -22 -21 -19 -17 -16 -16 -17 -19 -20 -20 -19 -18 -17 -16 -15 -14 -13 -11 -10 -9 -9 -9 -9 -9 -10 -11 -12 -13 -14 -15 -15 -16 -17 -17 -15 -13 -10 -8 -9 -13 -18 -22 -26 -29 -31 -31 -30 -30 -30 -30 -31 -33 -36 -40 -46 -55 -65 -74 -77 -77 -80 -85 -88 -87 -84 -82 -81 -79 -77 -75 -73 -71 -68 -65 -63 -63 -65 -67 -68 -68 -69 -68 -66 -64 -65 -68 -65 -58 -50 -48 -51 -56 -60 -61 -59 -57 -55 -52 -51 -51 -51 -48 -41 -35 -33 -27 -29 -26 -15 0 2 -1 -2 -1 -2 -3 -5 -15 -27 -28 -27 -27 -24 -21 -24 -22 -19 -9 7 -22 -18 -17 -18 -20 -22 -23 -24 -26 -27 -29 -30 -33 -35 -35 -35 -34 -34 -34 -33 -32 -32 -30 -27 -24 -21 -18 -14 -12 -13 -16 -16 -9 -2 -0 -1 -2 0 1 -1 -4 -6 -4 0 4 5 5 4 4 3 2 2 8 13 14 13 11 12 15 15 14 12 10 8 7 6 4 1 -4 -6 -6 -4 -1 1 0 -2 -6 -11 -15 -18 -22 -25 -26 -23 -21 -21 -22 -21 -24 -30 -34 -34 -30 -26 -32 -36 -32 -20 -9 -12 -18 -23 -27 -30 -28 -26 -26 -28 -33 -34 -31 -27 -26 -30 -36 -43 -43 -36 -28 -29 -33 -36 -38 -40 -42 -44 -47 -49 -49 -49 -50 -50 -51 -52 -52 -49 -47 -46 -46 -47 -48 -49 -50 -52 -52 -52 -52 -53 -54 -56 -59 -60 -61 -62 -63 -66 -68 -70 -71 -73 -74 -75 -76 -77 -77 -80 -82 -83 -83 -84 -85 -87 -88 -88 -89 -90 -91 -94 -97 -100 -102 -104 -107 -109 -110 -108 -103 -97 -91 -89 -89 -82 -69 -54 -47 -50 -50 -47 -42 -37 -36 -46 -59 -67 -68 -68 -64 -57 -50 -44 -44 -45 -44 -42 -40 -38 -35 -32 -29 -26 -25 -24 -23 -23 -23 -22 -23 -23 -23 -24 -24 -23 -21 -20 -19 -18 -18 -17 -17 -18 -18 -19 -20 -21 -22 -22 -22 -22 -22 -22 -22 -22 -22 -22 -21 -21 -20 -19 -18 -16 -15 -14 -12 -10 -9 -10 -12 -15 -18 -20 -23 -26 -29 -32 -34 -34 -30 -24 -20 -18 -19 -22 -24 -25 -24 -22 -19 -17 -17 -18 -21 -24 -25 -25 -24 -22 -21 -20 -18 -17 -15 -13 -11 -10 -10 -11 -11 -12 -13 -14 -15 -15 -16 -17 -19 -21 -24 -28 -30 -24 -16 -13 -17 -21 -26 -30 -33 -34 -35 -36 -36 -36 -37 -38 -40 -43 -46 -52 -62 -78 -91 -95 -94 -93 -93 -91 -89 -87 -85 -84 -82 -81 -79 -76 -74 -71 -69 -67 -66 -66 -67 -68 -68 -68 -69 -69 -69 -69 -69 -68 -66 -64 -64 -64 -65 -65 -64 -61 -58 -56 -53 -53 -53 -51 -46 -37 -27 -24 -19 -24 -28 -24 -12 -10 -14 -15 -12 -14 -15 -18 -25 -35 -37 -34 -33 -30 -27 -23 -15 -9 1 15 -22 -19 -19 -21 -24 -27 -29 -29 -29 -30 -32 -34 -35 -34 -32 -32 -32 -34 -35 -33 -31 -28 -26 -24 -21 -19 -15 -11 -9 -10 -12 -10 -1 4 5 4 3 3 1 -1 -2 -1 2 6 9 10 9 8 9 7 5 5 12 17 17 15 15 17 18 16 14 11 9 9 8 7 4 -0 -6 -9 -12 -12 -10 -10 -10 -12 -15 -20 -24 -27 -31 -33 -32 -29 -26 -24 -22 -22 -28 -33 -34 -31 -26 -25 -32 -37 -35 -24 -12 -13 -19 -25 -29 -30 -28 -28 -30 -33 -39 -35 -29 -26 -29 -34 -39 -43 -41 -33 -27 -30 -34 -36 -38 -40 -41 -44 -47 -49 -50 -50 -50 -50 -50 -50 -49 -47 -46 -46 -46 -47 -48 -49 -50 -52 -52 -52 -52 -53 -54 -56 -59 -60 -61 -62 -64 -66 -67 -69 -70 -71 -73 -74 -76 -77 -78 -80 -82 -83 -83 -84 -85 -87 -88 -89 -90 -91 -93 -96 -98 -100 -103 -105 -107 -109 -110 -108 -104 -97 -90 -83 -79 -74 -64 -51 -42 -44 -45 -44 -42 -37 -32 -31 -35 -40 -46 -60 -75 -78 -70 -56 -51 -52 -52 -49 -44 -41 -37 -34 -31 -30 -29 -28 -27 -26 -25 -25 -25 -26 -26 -27 -28 -27 -25 -23 -22 -20 -20 -20 -20 -20 -20 -20 -21 -22 -23 -24 -24 -24 -24 -24 -24 -24 -23 -23 -23 -23 -22 -21 -19 -17 -16 -14 -12 -9 -7 -7 -10 -14 -17 -20 -23 -25 -29 -32 -34 -34 -31 -26 -22 -20 -21 -24 -27 -28 -27 -25 -22 -19 -18 -19 -23 -27 -29 -30 -29 -27 -25 -24 -24 -22 -20 -17 -14 -12 -12 -12 -13 -14 -15 -16 -17 -17 -19 -21 -24 -30 -39 -47 -53 -48 -34 -21 -21 -24 -28 -32 -35 -37 -39 -41 -43 -44 -44 -46 -47 -50 -52 -58 -69 -84 -95 -98 -97 -97 -96 -94 -91 -89 -87 -86 -84 -83 -82 -80 -77 -75 -72 -69 -68 -67 -67 -68 -68 -68 -69 -69 -70 -69 -69 -68 -67 -67 -68 -69 -68 -67 -66 -63 -60 -57 -54 -54 -54 -51 -42 -28 -15 -15 -17 -26 -35 -38 -29 -26 -28 -30 -26 -29 -31 -32 -35 -40 -40 -39 -36 -34 -29 -17 -4 5 11 20 -23 -22 -23 -26 -31 -37 -41 -36 -33 -33 -34 -35 -32 -30 -30 -32 -33 -36 -36 -32 -28 -25 -23 -21 -19 -16 -12 -9 -10 -12 -11 -5 5 9 8 7 6 4 2 2 3 5 7 11 13 13 12 12 12 9 7 9 15 19 17 16 16 17 15 13 11 10 8 7 6 4 0 -5 -8 -11 -13 -15 -18 -21 -22 -24 -27 -31 -33 -33 -32 -30 -28 -25 -22 -20 -20 -25 -33 -32 -29 -25 -24 -28 -34 -38 -36 -29 -19 -17 -21 -26 -30 -30 -31 -33 -36 -40 -43 -34 -29 -30 -35 -39 -43 -44 -40 -33 -29 -32 -35 -37 -37 -40 -41 -44 -48 -51 -52 -51 -51 -50 -50 -49 -47 -46 -46 -46 -47 -47 -48 -49 -50 -52 -52 -52 -52 -53 -55 -56 -58 -60 -61 -62 -63 -65 -66 -66 -68 -69 -71 -73 -75 -77 -78 -80 -81 -82 -83 -84 -85 -86 -88 -89 -90 -91 -94 -96 -98 -99 -102 -105 -108 -110 -111 -109 -106 -99 -88 -73 -60 -56 -51 -43 -36 -36 -39 -42 -45 -47 -44 -39 -34 -32 -37 -51 -68 -76 -75 -66 -61 -64 -64 -59 -51 -46 -41 -37 -35 -34 -33 -32 -31 -30 -29 -28 -28 -29 -30 -31 -31 -30 -29 -27 -25 -23 -23 -22 -22 -22 -22 -21 -22 -22 -23 -24 -25 -25 -25 -25 -25 -25 -25 -25 -25 -25 -24 -22 -21 -19 -17 -15 -12 -9 -6 -7 -10 -13 -17 -19 -22 -25 -28 -31 -33 -33 -30 -26 -23 -22 -23 -26 -29 -30 -30 -28 -25 -22 -21 -21 -24 -29 -33 -35 -35 -34 -32 -31 -30 -29 -28 -24 -19 -16 -14 -13 -13 -15 -17 -19 -21 -22 -25 -30 -37 -45 -58 -66 -72 -70 -59 -39 -30 -28 -31 -34 -37 -39 -42 -46 -50 -54 -56 -58 -59 -61 -64 -70 -82 -92 -98 -97 -97 -97 -97 -96 -94 -91 -89 -87 -85 -84 -83 -82 -81 -78 -75 -72 -70 -68 -68 -68 -68 -68 -68 -68 -68 -68 -68 -67 -67 -66 -67 -68 -68 -68 -67 -65 -62 -58 -56 -56 -56 -51 -39 -23 -16 -19 -24 -34 -46 -50 -44 -40 -39 -39 -38 -40 -41 -39 -38 -43 -44 -43 -39 -34 -25 -8 7 14 17 20 -25 -22 -24 -29 -38 -46 -48 -41 -36 -35 -35 -33 -30 -29 -31 -34 -37 -39 -35 -30 -25 -22 -20 -19 -16 -12 -10 -11 -16 -18 -13 -2 10 10 8 7 7 6 7 9 9 10 12 15 14 13 13 14 13 9 9 12 18 19 16 14 12 10 9 9 9 8 6 5 2 -2 -8 -11 -12 -12 -13 -14 -16 -21 -24 -28 -31 -32 -30 -27 -23 -19 -17 -17 -16 -19 -25 -35 -37 -29 -24 -23 -27 -31 -34 -36 -36 -35 -28 -23 -22 -25 -30 -34 -37 -40 -44 -45 -41 -33 -32 -37 -42 -43 -45 -45 -40 -33 -31 -34 -36 -37 -38 -40 -41 -45 -49 -53 -54 -53 -51 -51 -50 -48 -46 -46 -46 -46 -47 -48 -49 -50 -51 -52 -53 -53 -53 -54 -55 -57 -58 -59 -60 -61 -62 -63 -64 -65 -66 -68 -71 -73 -75 -77 -78 -79 -80 -82 -82 -83 -84 -85 -86 -88 -88 -90 -92 -93 -95 -97 -100 -103 -106 -109 -111 -110 -107 -100 -87 -65 -39 -29 -26 -26 -26 -28 -31 -38 -48 -61 -65 -61 -52 -45 -46 -49 -55 -61 -66 -69 -71 -79 -82 -76 -64 -58 -51 -46 -42 -40 -38 -37 -36 -34 -33 -31 -31 -31 -32 -33 -34 -33 -32 -30 -28 -27 -26 -26 -25 -25 -24 -23 -23 -24 -24 -25 -25 -26 -26 -27 -27 -27 -27 -27 -27 -27 -26 -24 -23 -22 -20 -17 -12 -9 -7 -8 -11 -14 -17 -20 -22 -24 -27 -30 -31 -31 -28 -25 -22 -22 -24 -28 -30 -32 -32 -31 -29 -27 -25 -25 -27 -32 -38 -43 -45 -44 -43 -42 -41 -42 -42 -38 -30 -23 -18 -15 -15 -16 -18 -21 -26 -30 -36 -44 -54 -61 -70 -74 -78 -78 -73 -59 -45 -35 -33 -36 -39 -42 -45 -50 -57 -68 -73 -75 -76 -78 -81 -85 -92 -97 -99 -98 -98 -97 -97 -96 -95 -92 -90 -87 -85 -84 -83 -83 -82 -80 -78 -75 -73 -71 -70 -70 -69 -68 -67 -67 -67 -67 -67 -67 -67 -66 -67 -67 -67 -68 -67 -65 -62 -59 -58 -58 -58 -53 -41 -25 -25 -28 -32 -40 -51 -52 -50 -46 -44 -43 -43 -45 -44 -41 -37 -45 -47 -45 -40 -31 -15 1 10 14 17 19 -25 -21 -25 -35 -46 -52 -48 -42 -36 -35 -35 -32 -30 -30 -34 -38 -42 -41 -33 -25 -20 -19 -19 -16 -12 -10 -11 -17 -22 -22 -14 1 11 9 7 7 9 11 13 13 13 14 17 18 16 15 15 15 15 14 15 17 19 17 13 9 6 6 8 9 8 6 4 1 -4 -11 -15 -16 -14 -12 -10 -10 -11 -14 -18 -21 -21 -19 -17 -17 -16 -16 -19 -23 -27 -32 -38 -41 -34 -23 -20 -22 -28 -31 -32 -34 -37 -40 -38 -31 -25 -25 -31 -37 -40 -42 -42 -41 -35 -33 -37 -42 -44 -44 -47 -46 -40 -33 -32 -35 -37 -38 -38 -40 -42 -46 -51 -55 -55 -54 -52 -51 -50 -47 -45 -46 -46 -47 -48 -49 -49 -50 -51 -52 -54 -54 -55 -55 -56 -57 -57 -58 -59 -59 -61 -62 -62 -63 -65 -68 -71 -74 -76 -77 -77 -79 -80 -81 -81 -82 -83 -84 -85 -86 -87 -89 -90 -92 -93 -95 -98 -101 -104 -106 -108 -108 -106 -100 -89 -68 -38 -24 -19 -18 -18 -19 -22 -30 -44 -65 -79 -81 -75 -68 -68 -63 -58 -58 -67 -79 -86 -92 -93 -90 -82 -76 -67 -60 -54 -49 -46 -43 -41 -39 -36 -35 -34 -34 -34 -35 -35 -34 -34 -33 -31 -30 -29 -29 -28 -27 -27 -26 -26 -26 -26 -26 -27 -27 -28 -28 -28 -28 -29 -29 -29 -28 -27 -27 -26 -25 -22 -17 -12 -9 -8 -10 -13 -16 -18 -20 -23 -25 -27 -29 -29 -29 -27 -24 -22 -22 -25 -28 -32 -34 -36 -36 -36 -35 -33 -32 -32 -37 -46 -54 -58 -58 -57 -56 -55 -56 -58 -56 -48 -40 -32 -23 -21 -20 -21 -24 -31 -42 -50 -58 -66 -71 -74 -75 -75 -73 -69 -59 -50 -43 -37 -39 -42 -45 -48 -54 -64 -81 -88 -90 -91 -91 -92 -94 -96 -98 -100 -100 -99 -98 -96 -95 -94 -92 -90 -87 -85 -83 -82 -81 -81 -80 -79 -77 -75 -73 -72 -71 -70 -68 -67 -66 -65 -66 -66 -67 -67 -67 -67 -67 -67 -67 -67 -64 -60 -57 -56 -58 -59 -56 -47 -33 -33 -35 -41 -48 -54 -51 -48 -46 -45 -45 -45 -45 -45 -43 -40 -47 -49 -46 -37 -24 -8 3 8 11 15 17 -23 -21 -27 -40 -50 -52 -45 -37 -31 -33 -35 -32 -29 -31 -37 -43 -46 -42 -30 -20 -17 -19 -19 -13 -9 -9 -15 -24 -25 -20 -9 6 12 8 6 7 10 12 12 13 16 19 21 19 17 17 18 20 21 21 21 20 18 13 7 4 5 8 10 10 8 4 -0 -5 -10 -13 -14 -12 -10 -8 -8 -8 -9 -11 -10 -9 -9 -12 -17 -21 -23 -26 -28 -32 -39 -44 -45 -39 -25 -18 -18 -23 -27 -29 -31 -34 -37 -40 -42 -39 -32 -27 -26 -29 -31 -33 -34 -36 -37 -38 -42 -44 -46 -47 -50 -46 -39 -31 -32 -36 -37 -38 -40 -42 -44 -48 -53 -57 -57 -55 -53 -52 -50 -46 -45 -46 -47 -48 -49 -49 -49 -50 -51 -53 -54 -55 -56 -57 -57 -57 -57 -57 -57 -58 -60 -61 -62 -63 -65 -69 -72 -74 -76 -77 -77 -78 -79 -80 -81 -82 -84 -84 -85 -85 -86 -87 -88 -90 -92 -94 -97 -99 -101 -102 -104 -104 -102 -98 -88 -69 -40 -25 -18 -15 -12 -13 -15 -20 -29 -45 -67 -83 -91 -91 -92 -86 -78 -76 -82 -93 -97 -98 -97 -96 -94 -91 -85 -79 -72 -63 -58 -52 -48 -45 -42 -39 -38 -37 -37 -36 -36 -35 -35 -34 -33 -33 -32 -31 -30 -30 -30 -30 -30 -29 -29 -29 -29 -29 -30 -30 -30 -30 -30 -30 -29 -29 -29 -29 -29 -28 -23 -17 -12 -10 -11 -13 -16 -18 -20 -22 -24 -26 -27 -28 -28 -27 -26 -24 -23 -23 -26 -30 -34 -38 -43 -46 -46 -47 -46 -45 -43 -47 -56 -64 -68 -68 -66 -64 -63 -63 -64 -65 -63 -60 -53 -41 -36 -33 -30 -28 -32 -51 -58 -62 -66 -71 -72 -70 -66 -61 -56 -46 -42 -41 -41 -44 -47 -50 -54 -59 -69 -86 -95 -97 -96 -96 -96 -96 -97 -98 -100 -101 -100 -97 -93 -92 -92 -92 -91 -88 -84 -82 -80 -79 -78 -78 -78 -77 -76 -75 -74 -73 -71 -69 -67 -65 -64 -65 -66 -68 -68 -68 -68 -67 -67 -68 -67 -64 -58 -51 -51 -57 -60 -59 -54 -42 -34 -34 -42 -52 -55 -46 -42 -42 -46 -47 -45 -45 -46 -48 -48 -51 -51 -46 -36 -18 -8 -0 5 9 13 15 -22 -22 -31 -43 -50 -50 -42 -31 -26 -31 -34 -31 -27 -32 -41 -47 -47 -40 -24 -16 -17 -21 -19 -11 -8 -12 -19 -25 -22 -14 -2 10 13 9 6 5 8 11 9 14 20 24 23 20 20 23 25 26 26 25 23 20 15 9 6 7 8 7 7 6 3 -1 -4 -8 -11 -12 -12 -9 -7 -8 -9 -9 -10 -9 -7 -8 -11 -19 -27 -33 -38 -41 -42 -43 -47 -47 -42 -32 -21 -17 -20 -24 -28 -31 -35 -36 -36 -35 -41 -43 -38 -30 -23 -24 -26 -29 -33 -37 -42 -44 -45 -46 -48 -50 -51 -45 -37 -32 -33 -36 -38 -40 -43 -46 -48 -51 -55 -57 -58 -58 -57 -54 -49 -45 -46 -47 -49 -50 -50 -50 -50 -50 -52 -53 -54 -56 -57 -58 -58 -57 -56 -56 -56 -57 -59 -61 -62 -64 -66 -69 -72 -74 -75 -76 -77 -77 -78 -79 -81 -82 -84 -84 -84 -84 -84 -85 -87 -89 -91 -93 -95 -96 -97 -97 -97 -98 -98 -95 -87 -68 -40 -25 -20 -16 -12 -12 -14 -17 -21 -29 -47 -71 -89 -97 -98 -98 -97 -96 -97 -99 -99 -98 -97 -97 -97 -97 -95 -93 -88 -81 -75 -66 -59 -54 -49 -46 -44 -42 -41 -40 -38 -37 -36 -36 -35 -34 -33 -32 -31 -32 -33 -33 -33 -33 -32 -32 -32 -33 -33 -33 -32 -31 -31 -30 -30 -30 -31 -32 -31 -28 -22 -17 -13 -13 -14 -16 -18 -19 -21 -23 -26 -28 -28 -28 -27 -27 -26 -26 -26 -27 -29 -34 -39 -45 -53 -57 -59 -60 -62 -62 -59 -58 -60 -65 -69 -68 -67 -65 -64 -64 -64 -66 -68 -70 -68 -60 -51 -43 -35 -29 -25 -36 -43 -47 -53 -62 -64 -60 -52 -43 -41 -36 -37 -40 -44 -48 -53 -57 -61 -67 -77 -91 -97 -99 -98 -97 -96 -96 -96 -97 -99 -100 -99 -95 -89 -85 -89 -93 -93 -90 -85 -82 -80 -79 -78 -77 -77 -76 -76 -75 -75 -73 -72 -70 -68 -65 -64 -65 -66 -68 -69 -69 -68 -68 -68 -68 -69 -66 -58 -49 -48 -56 -60 -61 -59 -50 -32 -28 -37 -53 -54 -43 -36 -38 -47 -48 -46 -45 -46 -49 -53 -54 -53 -49 -39 -22 -16 -7 1 6 10 13 -21 -24 -36 -46 -50 -48 -39 -26 -25 -29 -31 -26 -23 -34 -44 -48 -44 -33 -17 -15 -19 -22 -15 -8 -7 -11 -18 -23 -19 -10 3 15 16 9 5 6 9 13 14 18 21 20 18 19 22 26 29 29 28 26 23 18 12 8 8 8 4 -1 -2 -2 -4 -5 -6 -8 -11 -12 -10 -8 -8 -10 -11 -11 -11 -10 -10 -14 -22 -32 -40 -44 -49 -52 -55 -55 -52 -45 -35 -26 -20 -20 -23 -28 -32 -36 -38 -36 -33 -32 -40 -45 -41 -32 -24 -23 -27 -31 -36 -40 -44 -45 -46 -47 -48 -49 -48 -42 -36 -33 -35 -37 -39 -42 -46 -49 -51 -53 -56 -58 -60 -63 -61 -55 -47 -44 -47 -49 -51 -51 -51 -50 -50 -51 -52 -53 -56 -58 -60 -60 -60 -58 -56 -55 -55 -56 -58 -60 -61 -64 -67 -70 -72 -73 -74 -74 -75 -76 -77 -78 -79 -81 -82 -82 -83 -83 -83 -84 -85 -87 -89 -91 -92 -92 -91 -91 -92 -94 -95 -95 -89 -71 -43 -30 -26 -23 -17 -14 -14 -17 -21 -27 -40 -61 -80 -92 -95 -97 -99 -101 -101 -100 -99 -98 -97 -97 -96 -96 -97 -97 -96 -94 -89 -81 -74 -68 -60 -56 -53 -50 -49 -46 -43 -41 -40 -39 -38 -37 -35 -33 -32 -33 -34 -35 -36 -36 -35 -35 -36 -36 -36 -36 -34 -32 -31 -31 -31 -32 -33 -33 -31 -27 -21 -17 -15 -15 -17 -18 -20 -21 -23 -25 -28 -30 -30 -29 -28 -28 -29 -30 -32 -33 -36 -41 -47 -53 -59 -62 -63 -64 -65 -65 -60 -56 -57 -61 -65 -65 -64 -63 -62 -62 -63 -65 -69 -72 -73 -64 -48 -32 -21 -18 -15 -18 -20 -24 -31 -43 -46 -43 -36 -29 -32 -36 -40 -43 -47 -52 -59 -66 -73 -79 -90 -98 -100 -100 -99 -97 -97 -96 -96 -97 -98 -100 -100 -95 -86 -79 -87 -94 -96 -93 -89 -87 -85 -83 -80 -79 -77 -77 -76 -75 -75 -74 -72 -71 -69 -67 -66 -66 -67 -69 -70 -70 -69 -69 -69 -70 -70 -68 -63 -56 -54 -56 -59 -61 -62 -55 -36 -28 -35 -50 -53 -45 -39 -39 -48 -49 -48 -47 -47 -49 -53 -55 -55 -52 -47 -35 -29 -18 -5 1 6 9 -18 -25 -41 -49 -49 -44 -35 -24 -23 -23 -22 -21 -26 -38 -45 -45 -37 -21 -11 -15 -19 -19 -13 -9 -10 -15 -21 -25 -19 -7 8 19 18 11 8 10 15 18 18 17 14 11 9 14 21 26 29 29 27 25 21 15 8 7 7 4 -1 -5 -6 -7 -8 -7 -8 -10 -13 -13 -11 -9 -10 -12 -12 -12 -12 -13 -18 -26 -35 -44 -50 -53 -56 -59 -61 -62 -54 -41 -29 -23 -21 -25 -30 -34 -38 -39 -36 -32 -30 -33 -41 -45 -42 -35 -28 -25 -30 -35 -39 -41 -42 -44 -45 -46 -45 -45 -44 -40 -36 -35 -36 -38 -41 -46 -50 -51 -52 -54 -56 -59 -64 -66 -62 -53 -46 -45 -49 -51 -52 -52 -51 -51 -51 -52 -53 -54 -58 -61 -63 -63 -61 -59 -56 -54 -53 -54 -56 -58 -60 -63 -67 -69 -71 -71 -71 -72 -74 -75 -75 -76 -77 -78 -79 -79 -80 -80 -81 -82 -83 -84 -85 -87 -88 -87 -87 -88 -91 -93 -95 -95 -92 -77 -52 -39 -37 -37 -30 -20 -16 -18 -23 -27 -35 -50 -69 -86 -93 -95 -97 -99 -100 -100 -99 -98 -97 -96 -95 -95 -95 -95 -95 -95 -94 -91 -87 -81 -74 -69 -65 -61 -60 -57 -52 -49 -46 -44 -43 -41 -39 -37 -35 -36 -37 -37 -38 -37 -37 -38 -39 -39 -39 -38 -36 -34 -33 -33 -33 -34 -34 -32 -29 -24 -20 -18 -18 -18 -19 -21 -22 -24 -26 -29 -31 -32 -32 -32 -32 -32 -33 -36 -41 -44 -46 -51 -55 -58 -62 -63 -64 -64 -64 -62 -55 -49 -49 -56 -60 -61 -62 -63 -63 -62 -62 -65 -69 -72 -72 -59 -37 -20 -14 -15 -15 -17 -19 -21 -24 -27 -27 -27 -28 -30 -34 -39 -43 -47 -50 -55 -64 -75 -87 -94 -99 -101 -102 -101 -100 -99 -98 -97 -97 -97 -97 -99 -100 -98 -89 -80 -87 -95 -98 -96 -95 -93 -92 -89 -86 -83 -80 -78 -77 -76 -75 -74 -73 -72 -70 -69 -68 -68 -69 -70 -71 -71 -70 -70 -70 -71 -71 -70 -67 -62 -54 -51 -52 -55 -61 -57 -44 -36 -39 -46 -52 -52 -49 -46 -51 -51 -50 -49 -48 -50 -52 -53 -54 -54 -54 -49 -43 -31 -15 -8 -0 4 -17 -27 -42 -45 -42 -35 -26 -19 -19 -19 -18 -20 -30 -36 -40 -37 -28 -14 -10 -15 -19 -19 -16 -16 -18 -22 -24 -25 -17 -4 10 19 16 11 12 16 19 18 14 10 6 4 6 13 21 26 26 24 22 19 14 9 4 4 3 1 -2 -3 -4 -6 -7 -8 -11 -14 -15 -13 -11 -10 -12 -13 -14 -14 -17 -22 -30 -38 -46 -52 -55 -57 -58 -59 -59 -59 -51 -38 -26 -21 -23 -29 -34 -38 -39 -36 -30 -27 -30 -36 -44 -46 -43 -38 -33 -31 -33 -36 -39 -39 -40 -43 -44 -42 -40 -41 -42 -39 -36 -36 -37 -40 -45 -50 -53 -52 -52 -54 -58 -62 -67 -65 -58 -49 -44 -47 -50 -51 -52 -52 -51 -51 -52 -52 -53 -55 -60 -64 -65 -63 -61 -58 -55 -52 -51 -52 -54 -57 -60 -63 -66 -68 -68 -68 -69 -70 -71 -72 -72 -73 -73 -75 -76 -77 -78 -78 -79 -80 -81 -81 -82 -83 -84 -84 -85 -87 -90 -92 -93 -94 -94 -85 -66 -54 -52 -58 -51 -34 -23 -21 -26 -30 -35 -47 -65 -85 -91 -94 -96 -97 -99 -99 -98 -97 -96 -95 -94 -93 -93 -93 -93 -92 -92 -91 -90 -88 -85 -82 -77 -74 -74 -71 -65 -59 -55 -52 -50 -49 -47 -44 -41 -41 -41 -41 -41 -40 -40 -41 -41 -42 -42 -41 -39 -37 -36 -36 -36 -36 -34 -31 -27 -23 -21 -21 -21 -21 -23 -25 -26 -28 -30 -32 -34 -36 -37 -37 -37 -39 -41 -45 -52 -55 -56 -57 -59 -60 -63 -64 -63 -62 -60 -57 -49 -43 -42 -45 -48 -55 -60 -63 -63 -63 -63 -66 -70 -73 -70 -53 -32 -18 -16 -17 -18 -19 -21 -24 -26 -28 -30 -32 -32 -33 -37 -41 -45 -49 -52 -57 -66 -80 -96 -102 -103 -102 -101 -101 -100 -99 -99 -98 -99 -98 -98 -100 -101 -101 -95 -86 -87 -92 -95 -97 -99 -98 -97 -94 -92 -89 -85 -82 -80 -78 -76 -75 -74 -73 -72 -71 -71 -71 -72 -72 -72 -72 -72 -72 -71 -71 -71 -70 -68 -60 -48 -41 -40 -44 -54 -57 -52 -47 -48 -46 -52 -56 -56 -54 -54 -54 -53 -51 -50 -50 -50 -49 -49 -54 -56 -54 -49 -39 -25 -19 -8 -1 -20 -33 -40 -36 -31 -24 -17 -11 -14 -13 -13 -18 -28 -32 -31 -25 -17 -11 -15 -22 -25 -24 -21 -24 -26 -27 -26 -24 -15 -1 10 15 13 13 16 18 17 11 5 2 2 3 7 15 21 22 18 13 10 7 3 -0 -2 1 2 1 0 0 0 -2 -5 -10 -15 -18 -16 -12 -10 -11 -15 -17 -20 -23 -28 -36 -43 -49 -52 -53 -55 -56 -55 -53 -51 -51 -47 -37 -27 -20 -23 -30 -34 -34 -32 -28 -25 -27 -33 -40 -45 -45 -42 -38 -36 -36 -36 -35 -36 -37 -40 -42 -41 -38 -36 -41 -42 -40 -37 -37 -39 -43 -48 -54 -57 -55 -54 -55 -59 -62 -64 -59 -50 -45 -45 -49 -51 -52 -51 -51 -51 -51 -52 -52 -53 -56 -60 -63 -63 -61 -59 -57 -55 -52 -50 -50 -53 -56 -59 -62 -65 -66 -66 -66 -67 -68 -69 -70 -70 -70 -70 -72 -74 -75 -76 -78 -79 -79 -78 -78 -78 -79 -80 -82 -84 -86 -89 -90 -90 -91 -94 -92 -82 -72 -69 -76 -71 -52 -35 -27 -31 -35 -39 -48 -65 -85 -92 -94 -96 -97 -98 -98 -97 -96 -94 -93 -92 -92 -92 -92 -91 -90 -90 -89 -88 -87 -87 -86 -85 -85 -86 -84 -78 -72 -68 -64 -62 -61 -59 -56 -50 -49 -47 -45 -45 -45 -45 -45 -45 -45 -45 -44 -43 -42 -41 -40 -39 -38 -34 -30 -26 -24 -24 -24 -25 -26 -28 -30 -32 -34 -35 -35 -37 -41 -45 -47 -47 -48 -51 -54 -57 -59 -60 -59 -60 -61 -64 -65 -62 -58 -52 -47 -38 -33 -30 -30 -33 -43 -54 -61 -64 -64 -64 -67 -70 -71 -64 -49 -33 -24 -21 -20 -21 -22 -24 -26 -28 -32 -36 -40 -42 -38 -39 -43 -47 -50 -54 -58 -67 -80 -97 -102 -102 -101 -100 -100 -100 -99 -99 -100 -100 -100 -100 -100 -101 -102 -96 -87 -82 -83 -88 -96 -100 -100 -99 -97 -95 -93 -90 -87 -84 -82 -79 -78 -77 -77 -76 -75 -74 -74 -74 -74 -74 -74 -74 -73 -72 -72 -71 -70 -67 -56 -43 -35 -33 -35 -45 -55 -58 -58 -58 -55 -56 -57 -58 -57 -57 -56 -55 -54 -52 -52 -50 -47 -47 -54 -57 -55 -50 -42 -29 -24 -14 -8 -20 -29 -29 -29 -25 -19 -12 -7 -9 -9 -11 -17 -24 -27 -23 -18 -15 -17 -24 -31 -32 -29 -28 -30 -30 -30 -28 -24 -11 5 14 15 13 15 18 16 9 0 -3 -2 1 5 8 13 14 10 3 -2 -4 -7 -10 -11 -8 -0 4 4 2 -0 -1 -3 -7 -13 -18 -18 -13 -10 -11 -15 -21 -28 -34 -38 -42 -47 -49 -50 -50 -50 -49 -47 -44 -42 -43 -46 -46 -40 -30 -20 -21 -26 -29 -29 -27 -25 -27 -31 -36 -42 -46 -43 -39 -36 -36 -38 -37 -36 -35 -37 -39 -40 -38 -35 -35 -41 -43 -40 -38 -40 -44 -46 -51 -56 -61 -60 -56 -54 -55 -57 -57 -50 -45 -44 -47 -52 -53 -52 -51 -51 -50 -51 -51 -51 -52 -56 -59 -59 -59 -58 -58 -58 -55 -51 -49 -50 -53 -56 -59 -62 -63 -64 -64 -65 -65 -66 -67 -68 -68 -68 -69 -71 -72 -73 -74 -76 -77 -77 -76 -75 -74 -75 -77 -80 -82 -85 -86 -87 -88 -91 -94 -93 -88 -83 -81 -83 -80 -67 -48 -34 -36 -40 -44 -53 -67 -85 -92 -95 -96 -96 -96 -96 -95 -94 -93 -92 -91 -91 -91 -91 -90 -89 -88 -88 -87 -86 -84 -84 -84 -85 -87 -88 -87 -84 -80 -75 -73 -72 -70 -67 -63 -60 -54 -52 -51 -52 -51 -50 -50 -50 -49 -50 -50 -50 -48 -45 -43 -40 -36 -31 -28 -28 -28 -29 -31 -33 -35 -37 -40 -42 -42 -41 -43 -49 -56 -60 -59 -56 -56 -58 -60 -61 -61 -61 -61 -63 -65 -65 -60 -50 -39 -35 -29 -26 -25 -23 -24 -33 -46 -58 -64 -65 -66 -67 -68 -65 -51 -38 -33 -32 -29 -26 -25 -25 -26 -27 -28 -32 -39 -48 -56 -50 -47 -47 -50 -54 -57 -62 -70 -83 -96 -99 -99 -99 -99 -99 -99 -99 -99 -100 -102 -102 -102 -102 -101 -99 -88 -77 -72 -76 -86 -96 -100 -101 -99 -98 -97 -95 -93 -90 -88 -85 -83 -81 -80 -80 -79 -78 -77 -77 -77 -77 -76 -76 -75 -74 -73 -72 -72 -71 -68 -57 -47 -39 -34 -32 -38 -50 -59 -63 -64 -62 -60 -59 -58 -58 -58 -58 -57 -55 -53 -52 -51 -50 -50 -57 -59 -57 -52 -42 -25 -20 -18 -16 -15 -21 -22 -26 -23 -16 -7 -3 -6 -10 -15 -20 -25 -26 -23 -20 -21 -25 -32 -35 -34 -32 -30 -31 -31 -30 -28 -22 -3 15 22 22 18 17 16 10 1 -7 -8 -6 -3 -0 2 5 2 -4 -11 -15 -15 -15 -16 -16 -9 2 5 4 2 0 -2 -9 -15 -19 -19 -15 -11 -12 -17 -25 -31 -35 -38 -39 -41 -42 -42 -43 -43 -43 -41 -37 -36 -38 -41 -43 -45 -41 -32 -21 -20 -27 -30 -30 -28 -28 -32 -36 -40 -42 -44 -40 -36 -33 -34 -38 -41 -40 -37 -34 -36 -37 -35 -34 -36 -42 -42 -40 -40 -45 -49 -50 -55 -62 -69 -64 -54 -49 -50 -53 -51 -46 -44 -46 -50 -53 -53 -52 -51 -51 -50 -50 -50 -50 -51 -54 -56 -56 -56 -57 -60 -60 -55 -50 -48 -51 -54 -57 -58 -60 -61 -62 -62 -63 -64 -65 -66 -66 -66 -66 -67 -69 -70 -71 -72 -73 -74 -74 -73 -72 -72 -72 -74 -77 -80 -81 -82 -85 -88 -91 -91 -86 -83 -82 -82 -82 -79 -70 -55 -42 -43 -47 -52 -61 -73 -87 -92 -94 -95 -96 -95 -95 -94 -92 -92 -91 -91 -90 -90 -89 -89 -88 -87 -86 -86 -85 -84 -83 -82 -82 -84 -86 -88 -87 -83 -77 -73 -73 -74 -74 -74 -71 -65 -61 -61 -61 -58 -56 -56 -56 -56 -57 -59 -59 -57 -52 -50 -47 -42 -36 -33 -34 -35 -37 -39 -42 -44 -46 -49 -53 -53 -52 -54 -59 -65 -69 -68 -66 -64 -64 -63 -63 -63 -63 -63 -64 -65 -63 -55 -41 -27 -27 -28 -29 -30 -28 -25 -31 -43 -56 -64 -65 -66 -67 -67 -62 -48 -40 -41 -46 -43 -34 -30 -28 -28 -28 -29 -32 -40 -52 -67 -64 -59 -57 -60 -63 -66 -71 -79 -90 -97 -98 -98 -98 -98 -98 -99 -99 -100 -101 -103 -103 -103 -103 -102 -97 -86 -81 -81 -87 -95 -100 -101 -100 -99 -98 -97 -96 -94 -93 -90 -88 -85 -84 -83 -83 -82 -80 -79 -79 -79 -79 -79 -78 -77 -75 -74 -73 -72 -72 -71 -67 -58 -48 -39 -35 -37 -45 -55 -64 -65 -64 -62 -61 -60 -59 -59 -59 -58 -56 -54 -52 -52 -53 -56 -60 -61 -60 -56 -47 -33 -30 -29 -29 -11 -15 -19 -25 -20 -12 -5 -2 -6 -13 -19 -24 -28 -29 -29 -29 -29 -31 -34 -34 -31 -27 -26 -27 -27 -25 -20 -11 7 19 23 21 19 18 11 2 -7 -11 -10 -9 -7 -5 -1 1 -4 -9 -11 -7 -2 -2 -4 -3 3 10 8 5 1 -2 -6 -12 -17 -19 -16 -11 -10 -15 -23 -29 -30 -30 -31 -32 -33 -34 -37 -39 -40 -38 -34 -33 -34 -36 -37 -40 -45 -44 -36 -23 -19 -27 -32 -32 -31 -33 -37 -39 -40 -40 -42 -39 -37 -36 -37 -41 -45 -44 -39 -35 -35 -35 -34 -35 -38 -41 -40 -40 -45 -53 -58 -61 -66 -70 -68 -54 -45 -46 -51 -54 -50 -46 -46 -48 -51 -53 -53 -52 -51 -50 -50 -49 -48 -49 -50 -54 -56 -57 -58 -59 -62 -60 -53 -49 -48 -51 -54 -55 -56 -57 -58 -59 -61 -62 -64 -65 -64 -64 -63 -63 -65 -67 -68 -68 -68 -69 -70 -70 -71 -71 -70 -70 -72 -74 -77 -77 -78 -82 -86 -88 -84 -80 -80 -80 -80 -80 -79 -73 -64 -56 -56 -60 -65 -72 -81 -87 -91 -93 -95 -95 -94 -93 -92 -91 -91 -90 -90 -89 -89 -88 -87 -86 -85 -85 -85 -84 -83 -82 -81 -81 -81 -83 -85 -85 -82 -74 -68 -69 -73 -76 -76 -75 -73 -71 -70 -69 -66 -64 -64 -65 -66 -67 -69 -69 -67 -60 -58 -58 -54 -47 -45 -46 -47 -50 -53 -56 -57 -58 -62 -66 -66 -65 -65 -67 -70 -72 -73 -73 -71 -69 -66 -65 -64 -64 -63 -63 -64 -61 -53 -41 -30 -29 -32 -36 -39 -38 -34 -37 -47 -57 -62 -64 -66 -67 -67 -65 -57 -52 -54 -62 -62 -50 -40 -34 -32 -30 -30 -33 -39 -50 -67 -73 -73 -73 -76 -79 -82 -85 -90 -95 -97 -98 -98 -98 -98 -98 -99 -99 -100 -102 -103 -104 -104 -104 -103 -100 -96 -96 -98 -100 -103 -103 -102 -100 -99 -98 -97 -96 -95 -94 -92 -89 -88 -86 -86 -85 -83 -82 -81 -81 -81 -81 -81 -80 -78 -76 -75 -73 -73 -72 -73 -72 -68 -59 -48 -40 -40 -43 -51 -62 -65 -65 -64 -63 -62 -61 -60 -59 -58 -56 -52 -50 -49 -52 -57 -61 -62 -61 -58 -54 -46 -44 -44 -44 -11 -12 -18 -23 -16 -8 -3 -1 -6 -13 -19 -25 -29 -31 -33 -35 -36 -37 -36 -31 -24 -18 -17 -20 -20 -14 -5 4 12 17 19 19 17 12 1 -11 -19 -21 -18 -12 -4 3 9 8 1 -1 1 5 7 4 1 2 7 10 8 3 -3 -9 -14 -19 -23 -22 -16 -10 -11 -17 -23 -25 -24 -24 -27 -29 -31 -34 -38 -40 -39 -35 -32 -32 -33 -34 -35 -38 -45 -47 -40 -26 -20 -26 -31 -34 -35 -37 -38 -38 -38 -39 -41 -40 -40 -42 -44 -46 -48 -47 -43 -38 -35 -34 -34 -36 -38 -40 -41 -45 -53 -63 -70 -74 -76 -72 -60 -46 -46 -53 -57 -56 -49 -46 -47 -50 -52 -53 -53 -52 -51 -50 -49 -49 -48 -49 -52 -56 -59 -60 -61 -62 -63 -57 -51 -47 -48 -51 -52 -53 -54 -54 -55 -58 -60 -62 -64 -64 -62 -60 -59 -60 -61 -64 -65 -65 -65 -65 -66 -67 -68 -69 -69 -69 -69 -71 -73 -74 -74 -78 -82 -82 -77 -76 -77 -78 -78 -79 -80 -79 -78 -79 -82 -83 -82 -79 -77 -81 -88 -92 -94 -94 -93 -92 -91 -90 -90 -89 -88 -88 -88 -87 -86 -85 -84 -84 -84 -83 -83 -82 -81 -80 -80 -81 -82 -83 -81 -71 -61 -65 -72 -76 -75 -74 -74 -73 -72 -73 -72 -72 -72 -73 -74 -74 -74 -74 -73 -69 -68 -68 -66 -61 -59 -60 -63 -67 -71 -74 -75 -74 -73 -71 -69 -69 -69 -70 -71 -73 -74 -75 -74 -71 -68 -65 -63 -62 -61 -60 -61 -61 -58 -51 -38 -34 -37 -45 -52 -51 -46 -48 -54 -59 -62 -64 -65 -67 -68 -68 -66 -65 -66 -71 -71 -65 -56 -48 -43 -37 -35 -36 -39 -47 -62 -73 -81 -86 -88 -91 -93 -94 -96 -97 -98 -98 -98 -98 -98 -99 -100 -101 -102 -103 -104 -105 -105 -105 -104 -103 -103 -103 -103 -103 -102 -102 -102 -101 -100 -99 -97 -96 -96 -94 -93 -91 -89 -88 -87 -86 -85 -84 -83 -82 -82 -82 -82 -81 -80 -77 -75 -74 -73 -73 -73 -73 -71 -66 -57 -49 -47 -49 -54 -63 -65 -65 -65 -64 -63 -62 -61 -60 -58 -56 -51 -45 -44 -50 -55 -59 -61 -61 -59 -57 -54 -52 -51 -51 -13 -13 -16 -19 -12 -5 -1 -1 -5 -9 -13 -17 -19 -23 -27 -31 -34 -33 -28 -18 -10 -8 -11 -12 -9 -1 9 18 20 20 20 19 16 8 -3 -14 -21 -22 -16 -8 0 6 10 8 4 3 3 4 3 -1 -5 -5 -1 3 2 -3 -10 -18 -23 -27 -30 -27 -18 -11 -13 -17 -21 -22 -22 -25 -29 -33 -35 -38 -40 -40 -37 -33 -31 -32 -33 -34 -35 -40 -47 -49 -43 -31 -23 -25 -29 -33 -37 -38 -37 -36 -36 -38 -39 -39 -42 -46 -49 -51 -51 -49 -46 -40 -37 -36 -37 -39 -40 -41 -45 -52 -61 -71 -78 -80 -74 -62 -50 -46 -54 -61 -62 -57 -50 -47 -49 -52 -53 -53 -53 -52 -51 -50 -51 -50 -50 -52 -56 -62 -64 -64 -63 -61 -59 -52 -47 -45 -46 -48 -49 -50 -51 -52 -54 -57 -59 -61 -62 -61 -59 -57 -56 -57 -59 -62 -63 -63 -61 -61 -63 -64 -66 -67 -68 -68 -68 -69 -71 -72 -73 -75 -77 -76 -72 -73 -75 -77 -77 -78 -79 -80 -83 -87 -92 -91 -86 -77 -70 -73 -84 -91 -94 -93 -92 -91 -91 -90 -90 -88 -87 -87 -87 -87 -86 -85 -84 -84 -83 -82 -81 -81 -80 -80 -79 -79 -80 -80 -78 -68 -57 -59 -66 -70 -73 -73 -72 -71 -71 -71 -72 -73 -73 -73 -74 -73 -72 -72 -72 -73 -72 -70 -67 -65 -60 -62 -68 -74 -78 -80 -80 -79 -76 -72 -68 -67 -68 -70 -72 -73 -73 -73 -72 -69 -65 -62 -59 -56 -54 -54 -55 -58 -61 -58 -47 -43 -47 -55 -60 -59 -57 -57 -58 -60 -62 -63 -65 -66 -68 -69 -70 -71 -71 -73 -73 -71 -68 -64 -60 -52 -47 -44 -45 -51 -60 -72 -82 -89 -92 -94 -96 -97 -97 -97 -98 -98 -98 -98 -99 -100 -102 -103 -105 -105 -105 -106 -106 -105 -105 -104 -103 -103 -101 -99 -96 -98 -101 -103 -101 -99 -98 -96 -96 -95 -94 -92 -91 -90 -89 -87 -86 -85 -84 -83 -82 -82 -82 -82 -80 -78 -76 -74 -73 -73 -73 -73 -71 -67 -59 -52 -52 -56 -62 -66 -66 -66 -66 -65 -63 -62 -62 -60 -59 -56 -51 -44 -41 -48 -53 -56 -57 -57 -56 -55 -54 -53 -53 -53 -14 -10 -10 -13 -8 -5 -6 -10 -11 -12 -14 -17 -19 -20 -25 -30 -30 -23 -12 -4 -1 -3 -7 -4 1 8 15 21 22 21 20 17 9 -2 -10 -15 -17 -14 -10 -5 -2 0 1 -0 -2 -4 -5 -8 -11 -14 -18 -19 -16 -11 -11 -15 -21 -26 -29 -35 -36 -31 -20 -13 -15 -17 -20 -22 -26 -32 -35 -38 -39 -41 -41 -37 -34 -31 -32 -33 -34 -36 -38 -45 -49 -49 -43 -34 -27 -24 -26 -31 -35 -37 -35 -35 -35 -36 -35 -36 -41 -46 -52 -54 -52 -49 -46 -42 -41 -42 -45 -47 -46 -43 -46 -55 -65 -73 -77 -70 -59 -48 -45 -52 -63 -66 -62 -55 -50 -49 -51 -54 -54 -53 -53 -52 -52 -53 -54 -54 -55 -57 -61 -65 -67 -66 -63 -59 -54 -47 -43 -42 -44 -46 -47 -48 -49 -51 -53 -55 -57 -58 -58 -57 -56 -55 -55 -56 -58 -60 -61 -60 -58 -59 -60 -61 -63 -65 -67 -67 -67 -68 -70 -71 -71 -73 -73 -71 -70 -72 -74 -76 -77 -78 -78 -80 -82 -87 -92 -92 -88 -84 -80 -82 -88 -92 -93 -93 -92 -91 -91 -90 -89 -88 -87 -87 -87 -86 -85 -85 -84 -83 -82 -81 -80 -80 -80 -80 -79 -78 -78 -78 -75 -65 -55 -51 -53 -57 -65 -69 -70 -70 -70 -70 -70 -70 -70 -70 -69 -68 -67 -67 -67 -69 -66 -61 -56 -55 -48 -50 -59 -70 -77 -80 -81 -80 -77 -72 -67 -66 -66 -68 -71 -72 -71 -71 -69 -64 -58 -56 -51 -46 -43 -44 -47 -54 -61 -63 -58 -57 -58 -61 -62 -61 -60 -60 -60 -61 -62 -63 -65 -66 -68 -69 -70 -71 -72 -72 -72 -73 -73 -72 -71 -67 -62 -58 -57 -66 -73 -80 -85 -90 -92 -94 -96 -97 -98 -97 -98 -98 -98 -99 -101 -102 -103 -105 -106 -107 -107 -107 -107 -106 -106 -104 -101 -98 -95 -94 -91 -95 -101 -104 -102 -99 -97 -96 -95 -95 -95 -94 -92 -91 -89 -88 -87 -86 -84 -82 -80 -80 -81 -81 -81 -79 -77 -74 -73 -73 -73 -73 -71 -67 -56 -49 -49 -55 -64 -67 -67 -67 -67 -65 -64 -63 -62 -61 -59 -56 -53 -48 -45 -48 -50 -50 -49 -46 -46 -46 -47 -48 -51 -53 -12 -8 -5 -6 -4 -6 -10 -16 -18 -20 -25 -27 -27 -29 -34 -32 -23 -11 -2 1 -1 -4 -6 -0 6 11 15 17 17 17 15 9 0 -9 -12 -12 -10 -8 -8 -7 -8 -9 -10 -12 -14 -16 -18 -21 -24 -26 -28 -29 -28 -25 -26 -30 -33 -35 -36 -40 -39 -32 -21 -14 -17 -20 -23 -28 -34 -38 -40 -41 -42 -42 -39 -34 -31 -31 -33 -35 -37 -40 -45 -51 -51 -46 -40 -34 -30 -25 -24 -28 -32 -36 -37 -36 -34 -32 -30 -33 -39 -45 -49 -50 -47 -45 -43 -42 -44 -48 -54 -57 -53 -43 -45 -53 -62 -67 -64 -53 -43 -41 -48 -60 -69 -67 -59 -52 -50 -52 -54 -55 -54 -54 -54 -54 -55 -57 -60 -60 -60 -61 -63 -65 -66 -65 -62 -57 -49 -43 -41 -41 -42 -44 -45 -47 -48 -50 -51 -52 -53 -54 -54 -54 -54 -54 -54 -56 -58 -59 -59 -57 -56 -58 -59 -59 -61 -63 -65 -66 -66 -67 -68 -69 -70 -70 -70 -69 -69 -71 -73 -75 -77 -78 -78 -79 -82 -86 -90 -91 -90 -89 -88 -89 -91 -93 -93 -92 -91 -91 -90 -90 -89 -87 -86 -86 -87 -86 -85 -84 -84 -83 -81 -80 -79 -79 -80 -80 -79 -77 -77 -76 -74 -67 -57 -49 -45 -47 -55 -62 -66 -68 -68 -69 -69 -68 -67 -66 -65 -65 -65 -64 -63 -63 -56 -47 -41 -39 -32 -34 -44 -58 -70 -77 -80 -79 -75 -69 -66 -65 -65 -65 -67 -68 -68 -68 -66 -60 -50 -47 -42 -36 -35 -38 -44 -52 -62 -67 -66 -66 -65 -65 -63 -62 -61 -60 -60 -61 -63 -63 -65 -67 -68 -69 -70 -71 -71 -71 -72 -73 -73 -74 -75 -74 -72 -70 -70 -76 -80 -85 -88 -91 -93 -94 -96 -97 -97 -97 -97 -98 -99 -101 -102 -104 -105 -106 -107 -107 -108 -108 -107 -107 -106 -103 -97 -90 -87 -91 -93 -98 -103 -104 -102 -99 -97 -96 -95 -95 -95 -94 -93 -92 -90 -89 -87 -86 -84 -79 -74 -72 -75 -80 -81 -80 -78 -76 -74 -73 -73 -72 -72 -69 -59 -52 -52 -58 -65 -67 -68 -68 -67 -66 -64 -63 -62 -61 -59 -57 -54 -52 -49 -48 -47 -42 -34 -25 -24 -27 -32 -40 -49 -52 -8 -5 -2 -2 -3 -5 -8 -10 -13 -17 -22 -24 -25 -27 -31 -26 -14 -1 3 -3 -9 -12 -11 -5 2 6 6 3 6 10 8 1 -8 -13 -14 -11 -6 -5 -9 -11 -13 -14 -17 -21 -23 -25 -26 -28 -29 -29 -28 -27 -28 -30 -34 -37 -41 -44 -46 -46 -40 -30 -18 -16 -21 -26 -31 -37 -40 -41 -42 -42 -41 -39 -34 -31 -31 -33 -35 -37 -41 -46 -53 -54 -49 -42 -36 -33 -30 -25 -23 -25 -31 -40 -42 -38 -33 -29 -29 -34 -39 -43 -42 -39 -38 -37 -37 -39 -42 -47 -54 -60 -58 -49 -48 -51 -53 -52 -46 -41 -40 -43 -53 -65 -70 -65 -56 -51 -51 -55 -57 -58 -58 -58 -58 -59 -60 -63 -66 -66 -64 -61 -60 -61 -63 -63 -61 -55 -47 -42 -39 -40 -41 -43 -45 -46 -47 -48 -49 -49 -50 -50 -51 -52 -52 -52 -53 -55 -56 -57 -57 -56 -56 -57 -57 -58 -59 -60 -63 -65 -66 -67 -67 -67 -68 -68 -68 -68 -69 -71 -72 -75 -78 -79 -79 -80 -82 -86 -89 -91 -91 -90 -89 -91 -92 -93 -93 -92 -91 -90 -90 -89 -87 -86 -86 -86 -86 -85 -84 -83 -83 -82 -81 -79 -79 -79 -80 -80 -79 -77 -75 -74 -74 -72 -64 -53 -44 -42 -46 -54 -61 -65 -66 -66 -66 -65 -63 -59 -59 -62 -65 -65 -63 -59 -51 -43 -37 -30 -25 -26 -32 -44 -60 -72 -78 -77 -72 -66 -66 -66 -64 -63 -63 -64 -65 -66 -67 -64 -53 -45 -39 -38 -40 -45 -50 -57 -64 -67 -68 -68 -67 -66 -65 -63 -62 -61 -61 -62 -62 -63 -64 -66 -68 -70 -71 -71 -71 -71 -72 -73 -74 -75 -76 -76 -76 -76 -77 -80 -83 -86 -89 -92 -93 -94 -96 -97 -98 -97 -97 -98 -99 -102 -104 -105 -106 -107 -108 -107 -108 -108 -107 -107 -107 -100 -90 -79 -77 -92 -100 -104 -105 -104 -101 -99 -98 -96 -95 -95 -95 -95 -94 -93 -91 -89 -88 -86 -83 -75 -65 -60 -65 -77 -81 -82 -80 -78 -76 -74 -73 -72 -73 -72 -68 -62 -61 -64 -67 -68 -68 -68 -67 -66 -65 -63 -62 -61 -59 -57 -55 -52 -48 -46 -42 -33 -19 -5 -5 -8 -16 -30 -48 -52 -4 -2 -0 0 -3 -4 -5 -6 -9 -12 -14 -15 -16 -20 -23 -17 -6 4 2 -8 -13 -15 -15 -12 -8 -6 -10 -14 -8 1 1 -5 -13 -17 -19 -15 -10 -7 -10 -15 -17 -18 -19 -23 -24 -25 -26 -27 -26 -21 -16 -15 -20 -29 -35 -39 -41 -43 -44 -37 -25 -14 -9 -16 -24 -30 -35 -39 -41 -42 -41 -40 -37 -34 -30 -30 -33 -36 -37 -42 -48 -54 -56 -50 -42 -37 -35 -35 -35 -33 -30 -28 -32 -42 -48 -45 -36 -29 -32 -36 -39 -39 -37 -36 -36 -36 -36 -37 -38 -41 -49 -60 -68 -67 -60 -51 -43 -39 -40 -41 -43 -48 -58 -71 -73 -65 -55 -52 -56 -60 -63 -65 -66 -66 -65 -65 -66 -69 -70 -66 -60 -55 -54 -58 -62 -63 -60 -53 -47 -41 -39 -39 -42 -43 -44 -45 -45 -46 -46 -46 -47 -47 -48 -49 -49 -50 -51 -53 -55 -55 -55 -55 -55 -56 -56 -56 -57 -59 -62 -65 -66 -66 -65 -65 -65 -66 -66 -68 -70 -71 -72 -75 -79 -80 -80 -81 -83 -86 -89 -91 -90 -89 -89 -91 -92 -93 -93 -92 -91 -90 -89 -87 -86 -85 -85 -85 -85 -84 -83 -82 -82 -82 -81 -79 -78 -79 -80 -80 -79 -77 -75 -73 -72 -72 -67 -57 -44 -40 -42 -47 -55 -62 -64 -62 -62 -61 -59 -54 -56 -62 -66 -67 -64 -59 -53 -49 -47 -35 -25 -23 -28 -38 -54 -67 -73 -74 -72 -68 -69 -69 -66 -63 -62 -62 -63 -64 -66 -67 -60 -49 -41 -40 -44 -52 -59 -64 -66 -66 -66 -66 -67 -67 -67 -66 -64 -63 -62 -62 -62 -62 -63 -65 -67 -69 -70 -71 -71 -71 -72 -73 -74 -76 -77 -77 -78 -79 -81 -83 -85 -88 -90 -92 -94 -95 -96 -97 -98 -98 -97 -97 -99 -103 -105 -106 -107 -107 -107 -107 -107 -107 -107 -107 -107 -99 -86 -73 -75 -93 -103 -107 -105 -103 -101 -99 -97 -96 -95 -96 -95 -95 -95 -94 -93 -91 -88 -86 -82 -72 -59 -51 -57 -73 -80 -81 -81 -79 -78 -76 -75 -73 -73 -73 -72 -70 -69 -69 -69 -68 -68 -68 -67 -66 -65 -63 -62 -61 -60 -58 -54 -49 -40 -38 -36 -25 -7 1 0 -3 -12 -27 -47 -52 -2 -1 -0 -2 -6 -7 -8 -8 -9 -8 -8 -8 -9 -13 -14 -7 -1 2 -4 -12 -14 -14 -13 -14 -16 -18 -22 -25 -20 -12 -8 -9 -13 -19 -23 -21 -17 -13 -15 -17 -18 -18 -18 -18 -15 -15 -15 -15 -10 -4 -2 -6 -14 -22 -26 -28 -29 -29 -27 -20 -14 -12 -14 -20 -26 -32 -38 -42 -44 -41 -39 -37 -35 -33 -32 -34 -37 -41 -45 -50 -54 -54 -50 -42 -37 -36 -38 -42 -46 -45 -40 -34 -33 -43 -51 -49 -41 -32 -31 -33 -36 -39 -41 -43 -46 -47 -47 -46 -46 -48 -54 -62 -69 -67 -54 -41 -35 -38 -43 -45 -47 -53 -64 -75 -72 -63 -56 -56 -63 -68 -71 -74 -75 -73 -72 -72 -72 -71 -66 -57 -51 -49 -54 -61 -65 -64 -59 -52 -46 -40 -38 -39 -42 -44 -44 -44 -44 -44 -45 -45 -45 -45 -45 -46 -47 -49 -50 -52 -53 -53 -54 -54 -54 -55 -55 -55 -56 -58 -61 -64 -65 -65 -62 -59 -60 -62 -65 -69 -71 -71 -73 -76 -80 -81 -81 -82 -85 -88 -90 -90 -89 -88 -89 -91 -92 -92 -92 -90 -90 -89 -88 -86 -84 -84 -85 -85 -84 -83 -81 -81 -81 -81 -80 -79 -78 -79 -79 -79 -78 -76 -74 -72 -70 -69 -66 -57 -45 -41 -40 -43 -50 -60 -62 -58 -58 -59 -60 -57 -59 -64 -68 -68 -65 -59 -52 -50 -53 -44 -27 -23 -30 -44 -59 -65 -66 -67 -74 -76 -75 -72 -69 -65 -63 -62 -62 -63 -65 -66 -59 -50 -43 -44 -48 -53 -58 -63 -65 -64 -63 -64 -65 -67 -69 -68 -67 -65 -63 -62 -62 -61 -62 -63 -65 -67 -68 -69 -69 -70 -71 -73 -75 -77 -78 -78 -79 -80 -83 -85 -86 -88 -90 -92 -94 -96 -97 -98 -98 -94 -90 -91 -98 -103 -105 -106 -107 -107 -107 -107 -107 -107 -107 -107 -107 -102 -94 -83 -85 -95 -103 -105 -104 -102 -100 -98 -97 -95 -96 -96 -96 -95 -95 -95 -94 -92 -90 -86 -82 -74 -62 -53 -57 -71 -78 -80 -80 -80 -79 -78 -77 -76 -75 -74 -73 -72 -72 -71 -70 -69 -68 -68 -67 -66 -65 -64 -62 -61 -60 -57 -52 -42 -27 -25 -26 -19 -2 1 0 -2 -9 -24 -45 -52 -1 -2 -2 -5 -10 -13 -13 -13 -12 -9 -7 -6 -6 -7 -4 -1 -2 -9 -16 -21 -22 -21 -19 -17 -18 -22 -25 -25 -25 -22 -19 -17 -18 -20 -23 -24 -23 -21 -20 -20 -18 -14 -8 -3 -3 -4 -4 -1 3 5 2 -4 -10 -12 -13 -13 -13 -14 -17 -22 -25 -27 -28 -30 -32 -36 -40 -42 -40 -37 -37 -38 -37 -36 -37 -39 -43 -47 -52 -53 -51 -46 -41 -37 -37 -38 -42 -47 -53 -54 -48 -42 -40 -47 -52 -49 -42 -34 -30 -30 -34 -40 -47 -52 -55 -58 -60 -61 -60 -59 -60 -62 -63 -54 -40 -32 -33 -40 -46 -48 -52 -58 -66 -71 -64 -57 -56 -62 -69 -73 -76 -77 -76 -73 -72 -73 -71 -63 -53 -49 -50 -55 -60 -65 -65 -62 -57 -51 -45 -39 -38 -40 -42 -43 -43 -43 -43 -44 -44 -45 -44 -44 -44 -45 -46 -48 -50 -51 -51 -52 -52 -52 -53 -53 -54 -55 -56 -58 -61 -63 -65 -64 -60 -54 -56 -61 -66 -70 -71 -72 -74 -78 -81 -81 -81 -82 -85 -90 -91 -90 -88 -87 -89 -91 -92 -91 -90 -88 -89 -88 -87 -85 -84 -84 -85 -84 -83 -81 -81 -80 -80 -80 -80 -79 -79 -79 -78 -77 -77 -76 -74 -72 -69 -68 -65 -60 -51 -45 -44 -46 -53 -62 -63 -58 -58 -61 -63 -64 -66 -68 -69 -67 -63 -58 -53 -52 -56 -48 -30 -25 -35 -53 -64 -63 -59 -59 -73 -79 -77 -74 -71 -68 -66 -64 -62 -61 -63 -61 -55 -49 -46 -51 -57 -61 -63 -64 -63 -61 -61 -61 -63 -67 -69 -70 -69 -67 -65 -62 -61 -60 -60 -61 -63 -65 -66 -67 -68 -70 -71 -73 -75 -77 -78 -79 -80 -81 -83 -85 -87 -88 -90 -93 -96 -98 -99 -98 -94 -85 -80 -82 -94 -102 -105 -106 -107 -107 -106 -106 -106 -106 -106 -106 -107 -106 -103 -99 -99 -102 -104 -105 -103 -101 -99 -97 -96 -95 -95 -95 -95 -95 -95 -94 -94 -92 -89 -86 -82 -76 -68 -60 -62 -71 -77 -79 -79 -79 -79 -79 -78 -78 -77 -75 -74 -73 -73 -71 -70 -70 -69 -68 -67 -66 -65 -63 -62 -61 -60 -57 -48 -33 -15 -13 -15 -14 -2 -1 -1 -2 -6 -18 -41 -50 -4 -5 -6 -8 -12 -15 -17 -19 -19 -17 -13 -9 -6 -2 1 -3 -11 -19 -26 -29 -29 -28 -27 -24 -21 -18 -16 -15 -19 -23 -24 -24 -23 -23 -22 -21 -21 -23 -24 -23 -15 -4 6 8 7 7 8 8 9 6 -0 -7 -10 -9 -7 -6 -8 -13 -23 -32 -37 -39 -41 -42 -42 -43 -43 -41 -36 -37 -40 -41 -39 -40 -41 -43 -46 -50 -53 -50 -45 -39 -36 -35 -38 -41 -45 -51 -56 -57 -55 -51 -50 -52 -53 -49 -43 -37 -31 -29 -32 -41 -51 -57 -60 -63 -66 -67 -65 -60 -56 -54 -53 -42 -32 -29 -33 -40 -46 -50 -54 -60 -66 -63 -56 -54 -58 -67 -73 -75 -74 -71 -66 -66 -68 -67 -61 -51 -48 -50 -54 -58 -60 -61 -60 -58 -55 -49 -43 -38 -37 -39 -42 -43 -43 -43 -44 -44 -44 -45 -44 -43 -43 -45 -47 -49 -50 -51 -51 -52 -52 -52 -52 -52 -53 -54 -55 -58 -60 -63 -64 -64 -61 -57 -57 -60 -65 -70 -72 -74 -76 -79 -81 -80 -80 -82 -86 -92 -93 -89 -87 -86 -88 -90 -90 -89 -87 -87 -88 -87 -86 -84 -84 -85 -85 -85 -83 -81 -80 -79 -79 -79 -79 -79 -79 -78 -77 -76 -76 -76 -76 -74 -70 -67 -67 -65 -61 -56 -55 -56 -60 -67 -68 -66 -65 -65 -66 -66 -66 -66 -66 -63 -56 -51 -50 -53 -57 -49 -32 -26 -37 -58 -66 -66 -62 -62 -74 -78 -77 -74 -71 -69 -68 -65 -63 -61 -61 -59 -55 -53 -55 -60 -66 -69 -68 -65 -61 -59 -59 -60 -62 -66 -69 -71 -71 -69 -66 -63 -60 -59 -58 -60 -62 -64 -66 -67 -68 -70 -71 -73 -75 -77 -78 -79 -80 -81 -83 -85 -87 -89 -91 -94 -97 -100 -99 -94 -87 -79 -76 -81 -94 -101 -103 -105 -106 -106 -106 -106 -106 -106 -105 -106 -106 -107 -108 -107 -106 -105 -105 -104 -102 -101 -99 -97 -95 -95 -95 -94 -94 -94 -92 -92 -92 -91 -88 -85 -81 -78 -75 -72 -73 -75 -76 -77 -77 -77 -78 -78 -78 -78 -77 -75 -74 -73 -72 -71 -70 -69 -68 -67 -66 -65 -64 -63 -62 -61 -60 -56 -47 -28 -18 -14 -12 -10 -5 -3 -3 -2 -4 -11 -30 -43 -10 -12 -12 -11 -11 -12 -14 -17 -21 -23 -24 -21 -13 -3 0 -5 -11 -17 -19 -19 -20 -23 -25 -21 -14 -10 -10 -15 -21 -23 -20 -18 -18 -20 -17 -13 -14 -20 -25 -21 -7 7 16 14 14 15 15 12 8 1 -7 -13 -16 -15 -13 -13 -16 -22 -32 -38 -39 -41 -45 -48 -46 -43 -40 -38 -37 -41 -43 -42 -41 -43 -44 -45 -47 -50 -50 -45 -39 -36 -36 -38 -42 -45 -48 -52 -56 -58 -58 -58 -58 -58 -56 -51 -46 -42 -38 -34 -36 -44 -54 -59 -60 -60 -60 -59 -54 -48 -45 -45 -47 -39 -33 -32 -35 -40 -45 -49 -55 -60 -62 -56 -52 -56 -64 -73 -74 -70 -64 -61 -61 -65 -65 -60 -52 -46 -48 -52 -56 -57 -57 -57 -57 -56 -52 -47 -41 -37 -37 -40 -42 -42 -42 -42 -43 -43 -44 -44 -44 -44 -44 -46 -48 -50 -52 -52 -53 -53 -53 -52 -52 -52 -52 -53 -55 -57 -60 -62 -63 -64 -65 -62 -58 -58 -63 -70 -73 -76 -78 -79 -79 -79 -79 -83 -89 -95 -93 -89 -86 -87 -88 -89 -88 -87 -86 -86 -86 -86 -85 -84 -84 -85 -85 -85 -84 -81 -80 -79 -79 -79 -80 -79 -79 -78 -76 -75 -76 -78 -79 -75 -68 -65 -65 -68 -68 -67 -67 -69 -70 -72 -71 -70 -69 -67 -65 -63 -62 -62 -61 -56 -43 -38 -41 -50 -56 -49 -35 -30 -41 -62 -69 -71 -70 -71 -77 -78 -77 -74 -71 -70 -68 -66 -64 -61 -60 -59 -60 -61 -65 -69 -72 -74 -73 -69 -63 -59 -59 -60 -63 -66 -68 -69 -70 -69 -67 -63 -60 -57 -57 -59 -62 -64 -66 -68 -69 -71 -72 -73 -75 -76 -78 -79 -80 -81 -83 -85 -88 -91 -93 -95 -98 -99 -97 -89 -79 -78 -82 -89 -96 -100 -102 -103 -105 -105 -106 -106 -106 -105 -105 -105 -106 -106 -107 -107 -106 -105 -104 -103 -102 -101 -100 -99 -96 -95 -94 -94 -93 -91 -90 -89 -89 -88 -87 -84 -81 -79 -77 -76 -76 -76 -75 -75 -75 -76 -76 -76 -76 -75 -73 -72 -71 -70 -69 -68 -67 -65 -64 -63 -62 -62 -62 -62 -61 -61 -61 -58 -51 -35 -25 -20 -18 -15 -10 -7 -5 -4 -4 -6 -16 -29 -15 -19 -20 -18 -16 -14 -12 -12 -14 -19 -26 -28 -23 -10 -3 -4 -8 -11 -12 -14 -20 -24 -24 -17 -9 -9 -15 -23 -26 -20 -11 -8 -10 -16 -9 -3 -6 -15 -21 -13 4 16 20 16 17 17 14 9 4 -3 -10 -16 -21 -23 -25 -28 -32 -35 -39 -38 -36 -36 -40 -41 -36 -32 -31 -34 -40 -44 -43 -42 -43 -46 -46 -47 -48 -48 -45 -40 -38 -38 -41 -43 -46 -48 -50 -52 -55 -57 -60 -62 -63 -63 -61 -56 -53 -52 -50 -46 -45 -50 -57 -58 -54 -50 -47 -43 -36 -32 -36 -42 -47 -42 -37 -35 -37 -41 -45 -50 -56 -60 -58 -52 -54 -61 -69 -73 -67 -59 -56 -59 -66 -67 -61 -54 -49 -49 -53 -57 -59 -58 -57 -57 -57 -54 -50 -44 -39 -37 -37 -40 -41 -41 -41 -42 -43 -43 -43 -43 -44 -45 -46 -48 -49 -51 -52 -54 -56 -55 -55 -53 -53 -53 -53 -53 -54 -57 -60 -62 -63 -64 -66 -63 -59 -58 -64 -71 -75 -77 -79 -79 -78 -77 -79 -85 -92 -95 -92 -89 -87 -88 -88 -88 -87 -86 -85 -86 -87 -87 -86 -85 -84 -85 -85 -84 -83 -81 -80 -79 -79 -80 -80 -79 -78 -77 -75 -75 -78 -81 -82 -76 -66 -62 -63 -68 -70 -71 -72 -73 -73 -73 -71 -70 -68 -65 -63 -61 -59 -58 -56 -49 -31 -26 -31 -43 -53 -49 -38 -35 -49 -65 -72 -75 -76 -77 -78 -78 -77 -75 -73 -72 -71 -68 -65 -63 -61 -61 -63 -66 -70 -73 -74 -76 -75 -73 -67 -62 -61 -62 -65 -66 -68 -68 -68 -68 -66 -63 -59 -57 -57 -59 -61 -64 -67 -69 -70 -72 -73 -74 -75 -77 -78 -79 -81 -82 -84 -87 -90 -92 -95 -96 -98 -98 -95 -84 -75 -80 -90 -96 -98 -99 -100 -102 -103 -104 -105 -106 -105 -105 -104 -104 -105 -105 -105 -105 -104 -103 -102 -101 -101 -101 -100 -99 -97 -96 -95 -94 -92 -89 -87 -86 -86 -86 -85 -84 -81 -79 -76 -75 -75 -75 -74 -74 -73 -73 -73 -73 -71 -68 -66 -66 -65 -64 -63 -62 -60 -58 -57 -54 -53 -55 -58 -58 -59 -61 -61 -60 -57 -47 -37 -30 -27 -27 -18 -13 -9 -8 -6 -5 -7 -15 -13 -18 -23 -26 -26 -24 -21 -18 -17 -20 -24 -28 -29 -24 -18 -17 -16 -16 -14 -17 -24 -27 -24 -14 -6 -11 -20 -26 -21 -9 -1 1 -5 -12 -2 5 0 -9 -10 2 15 21 20 15 12 8 4 2 1 -3 -9 -16 -22 -28 -34 -39 -43 -45 -43 -35 -32 -33 -33 -25 -16 -16 -22 -31 -40 -44 -45 -46 -48 -49 -49 -49 -48 -45 -39 -38 -40 -44 -46 -48 -49 -50 -51 -52 -54 -57 -61 -64 -66 -67 -66 -64 -62 -61 -59 -58 -56 -54 -53 -49 -43 -38 -35 -31 -28 -30 -36 -44 -48 -45 -40 -38 -39 -44 -50 -56 -61 -62 -56 -52 -58 -66 -70 -65 -55 -53 -58 -67 -73 -65 -55 -50 -51 -56 -61 -63 -63 -61 -61 -60 -58 -53 -47 -42 -38 -36 -37 -39 -40 -40 -41 -42 -43 -43 -43 -43 -44 -46 -48 -49 -50 -52 -53 -55 -56 -55 -54 -53 -53 -53 -53 -54 -55 -57 -59 -60 -61 -63 -66 -67 -66 -66 -68 -73 -76 -78 -79 -79 -78 -77 -80 -87 -93 -95 -92 -88 -87 -88 -88 -88 -87 -86 -86 -88 -88 -88 -87 -85 -85 -84 -84 -83 -82 -81 -80 -80 -80 -80 -80 -79 -77 -76 -75 -77 -81 -83 -82 -76 -67 -63 -64 -68 -69 -70 -71 -72 -72 -71 -70 -68 -66 -64 -61 -59 -56 -55 -53 -48 -36 -31 -32 -39 -49 -48 -41 -42 -58 -69 -73 -76 -77 -77 -77 -77 -77 -77 -76 -76 -74 -72 -69 -66 -64 -65 -66 -69 -71 -73 -75 -76 -76 -76 -72 -68 -66 -65 -66 -67 -67 -67 -67 -66 -64 -62 -60 -58 -57 -59 -62 -65 -67 -69 -71 -73 -74 -75 -76 -77 -78 -80 -81 -83 -85 -88 -91 -93 -95 -96 -96 -95 -93 -86 -80 -84 -92 -97 -98 -98 -99 -100 -102 -103 -104 -105 -105 -105 -104 -104 -103 -103 -104 -103 -102 -101 -100 -99 -99 -99 -99 -98 -98 -97 -96 -94 -91 -89 -86 -85 -83 -83 -83 -83 -81 -78 -76 -74 -74 -74 -74 -73 -71 -70 -69 -67 -64 -59 -58 -58 -59 -58 -58 -56 -55 -53 -51 -48 -44 -44 -47 -48 -54 -58 -61 -61 -60 -56 -48 -42 -39 -40 -29 -20 -15 -13 -11 -9 -8 -8 -13 -18 -23 -27 -29 -27 -26 -25 -25 -25 -26 -29 -32 -33 -34 -33 -32 -31 -30 -30 -32 -31 -25 -13 -5 -11 -17 -16 -5 6 9 4 -3 -7 6 10 6 0 7 19 22 18 11 4 -5 -12 -13 -10 -5 -10 -18 -26 -31 -33 -37 -40 -42 -41 -34 -26 -26 -25 -18 -7 -7 -15 -27 -38 -45 -48 -49 -50 -51 -51 -50 -49 -47 -43 -41 -43 -46 -48 -50 -52 -53 -53 -54 -54 -57 -59 -60 -61 -62 -65 -68 -70 -68 -61 -54 -53 -49 -42 -35 -32 -34 -35 -34 -31 -30 -31 -36 -41 -46 -44 -40 -38 -41 -47 -55 -62 -64 -59 -52 -54 -63 -67 -63 -53 -51 -57 -66 -72 -70 -56 -49 -50 -57 -65 -68 -67 -65 -64 -65 -64 -58 -51 -44 -41 -37 -36 -36 -38 -39 -39 -40 -41 -42 -43 -43 -44 -45 -47 -49 -50 -52 -53 -54 -55 -54 -53 -52 -51 -52 -52 -53 -53 -55 -57 -58 -58 -60 -63 -65 -66 -67 -68 -70 -74 -77 -79 -80 -80 -78 -78 -82 -88 -93 -95 -93 -89 -87 -87 -87 -87 -86 -87 -88 -89 -90 -89 -88 -86 -85 -84 -83 -82 -81 -80 -80 -80 -80 -80 -79 -78 -76 -76 -77 -81 -84 -84 -81 -75 -71 -69 -68 -68 -68 -68 -69 -69 -68 -68 -68 -67 -64 -62 -59 -57 -55 -53 -52 -50 -46 -44 -45 -47 -52 -51 -47 -49 -62 -70 -74 -76 -76 -76 -75 -76 -77 -78 -78 -78 -77 -75 -73 -70 -69 -70 -71 -72 -74 -75 -75 -75 -76 -76 -76 -74 -71 -69 -68 -68 -67 -67 -66 -65 -63 -62 -60 -59 -60 -61 -64 -66 -69 -71 -72 -74 -75 -76 -77 -77 -78 -80 -82 -84 -87 -90 -92 -93 -94 -95 -94 -93 -92 -90 -90 -91 -94 -96 -97 -98 -99 -100 -101 -102 -103 -104 -104 -104 -103 -102 -102 -102 -102 -101 -100 -99 -98 -97 -97 -97 -97 -97 -97 -97 -96 -94 -91 -88 -85 -83 -81 -80 -81 -81 -80 -78 -75 -73 -73 -73 -73 -72 -69 -66 -62 -58 -55 -52 -52 -54 -56 -57 -57 -57 -56 -55 -53 -51 -46 -41 -37 -34 -42 -51 -58 -60 -59 -56 -53 -51 -48 -49 -39 -30 -23 -19 -16 -15 -13 -11 -13 -17 -20 -21 -22 -22 -24 -25 -25 -22 -23 -27 -31 -33 -37 -40 -41 -41 -42 -42 -39 -35 -27 -14 -4 -5 -6 0 12 19 15 6 -1 1 13 15 13 14 24 27 17 4 -9 -19 -26 -31 -33 -33 -31 -34 -38 -42 -46 -48 -46 -40 -31 -21 -11 -11 -12 -11 -8 -8 -17 -27 -37 -44 -48 -48 -48 -48 -48 -50 -51 -50 -49 -49 -49 -51 -53 -54 -53 -52 -53 -55 -57 -58 -58 -57 -57 -56 -55 -58 -66 -69 -62 -46 -34 -32 -29 -26 -25 -30 -36 -36 -32 -29 -30 -32 -36 -40 -41 -39 -37 -37 -41 -47 -53 -56 -54 -51 -49 -55 -60 -59 -54 -50 -55 -64 -70 -69 -58 -48 -48 -54 -62 -68 -67 -64 -62 -64 -68 -64 -56 -48 -43 -41 -37 -35 -35 -36 -38 -39 -40 -40 -41 -43 -44 -46 -47 -48 -50 -52 -54 -55 -55 -54 -53 -52 -51 -50 -51 -52 -53 -53 -55 -55 -55 -57 -60 -64 -66 -67 -67 -68 -71 -75 -79 -81 -81 -81 -79 -79 -82 -88 -94 -98 -96 -91 -87 -87 -87 -87 -87 -87 -89 -90 -91 -91 -90 -88 -85 -83 -82 -81 -80 -79 -79 -80 -80 -80 -78 -76 -75 -76 -79 -84 -85 -83 -77 -72 -71 -70 -69 -67 -66 -66 -66 -66 -66 -66 -66 -64 -62 -59 -58 -55 -53 -52 -51 -51 -51 -50 -50 -52 -54 -55 -56 -59 -66 -71 -74 -75 -75 -75 -75 -75 -76 -76 -77 -78 -78 -77 -76 -75 -75 -75 -75 -76 -76 -76 -76 -76 -75 -76 -78 -78 -76 -72 -69 -68 -67 -66 -65 -64 -63 -62 -62 -62 -63 -64 -66 -69 -71 -73 -74 -76 -77 -77 -77 -78 -78 -80 -82 -85 -88 -90 -92 -92 -93 -94 -93 -92 -91 -91 -92 -94 -95 -96 -97 -98 -98 -99 -100 -101 -102 -103 -103 -103 -102 -101 -100 -99 -99 -98 -98 -97 -96 -95 -95 -95 -95 -96 -96 -96 -95 -93 -90 -87 -84 -82 -80 -78 -79 -79 -79 -77 -75 -72 -71 -72 -72 -70 -67 -61 -55 -51 -51 -52 -56 -60 -62 -63 -63 -62 -61 -59 -57 -55 -51 -46 -39 -32 -33 -39 -48 -56 -53 -48 -47 -51 -51 -51 -46 -40 -33 -26 -23 -20 -18 -16 -12 -15 -16 -16 -15 -17 -20 -21 -19 -15 -18 -23 -27 -29 -33 -37 -38 -38 -41 -42 -41 -36 -25 -10 1 4 7 11 17 19 16 11 10 14 20 21 21 23 24 15 1 -11 -21 -28 -34 -39 -43 -45 -46 -47 -49 -51 -52 -53 -46 -31 -16 -6 -4 -8 -11 -15 -19 -27 -34 -40 -46 -50 -48 -45 -44 -45 -47 -49 -51 -52 -52 -52 -52 -54 -56 -57 -57 -55 -56 -57 -58 -58 -55 -53 -51 -49 -49 -56 -66 -66 -53 -32 -26 -28 -27 -25 -26 -32 -36 -34 -29 -27 -30 -34 -37 -38 -36 -35 -35 -38 -42 -46 -48 -49 -49 -48 -48 -52 -54 -53 -52 -55 -63 -68 -65 -57 -47 -47 -51 -57 -60 -62 -57 -55 -57 -63 -67 -64 -56 -49 -44 -42 -37 -35 -34 -35 -38 -39 -39 -40 -41 -44 -46 -48 -49 -50 -52 -54 -56 -57 -56 -54 -53 -51 -50 -50 -51 -52 -53 -53 -54 -54 -55 -57 -61 -65 -67 -67 -68 -69 -72 -76 -80 -82 -82 -82 -80 -80 -84 -91 -98 -101 -98 -92 -88 -87 -88 -87 -88 -88 -89 -91 -92 -92 -91 -89 -85 -83 -81 -80 -79 -79 -79 -80 -80 -79 -77 -75 -74 -77 -81 -84 -84 -80 -75 -71 -69 -68 -66 -64 -63 -64 -65 -65 -64 -64 -63 -61 -58 -56 -55 -54 -52 -51 -52 -52 -52 -51 -51 -53 -55 -57 -60 -63 -68 -71 -73 -74 -75 -75 -75 -75 -75 -74 -75 -76 -77 -78 -79 -79 -80 -80 -80 -79 -79 -79 -78 -77 -76 -76 -78 -79 -79 -75 -71 -68 -67 -66 -65 -64 -63 -63 -64 -64 -66 -67 -69 -71 -73 -75 -77 -78 -79 -79 -78 -78 -79 -81 -83 -86 -88 -90 -91 -91 -92 -93 -93 -92 -91 -91 -93 -94 -96 -97 -98 -98 -98 -99 -100 -100 -101 -101 -102 -101 -100 -99 -98 -97 -96 -96 -95 -95 -94 -93 -93 -93 -93 -93 -94 -94 -94 -92 -90 -86 -84 -81 -79 -76 -76 -76 -76 -76 -72 -69 -69 -69 -70 -68 -64 -57 -51 -48 -51 -55 -58 -60 -61 -62 -63 -62 -61 -60 -58 -55 -53 -49 -44 -38 -33 -33 -37 -46 -46 -39 -35 -41 -43 -45 -47 -48 -44 -36 -31 -27 -24 -22 -12 -14 -15 -14 -13 -17 -19 -18 -16 -15 -18 -22 -27 -32 -36 -35 -34 -36 -40 -41 -40 -31 -17 -3 -1 -1 1 3 5 7 11 14 14 11 6 8 10 12 12 8 1 -6 -11 -14 -18 -25 -31 -34 -34 -34 -36 -42 -47 -50 -38 -18 -4 -1 -5 -13 -21 -28 -35 -42 -46 -50 -52 -51 -45 -41 -42 -44 -48 -50 -51 -52 -52 -52 -53 -54 -57 -58 -59 -58 -59 -61 -61 -60 -56 -53 -52 -52 -54 -62 -68 -64 -49 -30 -26 -29 -30 -29 -29 -35 -35 -32 -28 -28 -33 -38 -39 -36 -33 -34 -36 -40 -44 -47 -49 -50 -50 -48 -49 -49 -50 -52 -55 -61 -65 -63 -55 -47 -44 -51 -56 -59 -59 -59 -56 -57 -62 -68 -72 -68 -59 -50 -44 -41 -37 -35 -34 -35 -37 -37 -37 -39 -42 -45 -47 -49 -50 -52 -54 -57 -58 -58 -56 -54 -53 -51 -50 -50 -51 -52 -52 -52 -52 -53 -55 -59 -62 -66 -67 -68 -69 -71 -73 -77 -80 -82 -83 -83 -81 -81 -86 -93 -99 -99 -95 -91 -87 -87 -88 -88 -88 -89 -89 -91 -93 -93 -92 -89 -85 -83 -81 -80 -80 -79 -79 -79 -79 -78 -75 -74 -75 -77 -81 -83 -82 -78 -74 -71 -69 -66 -64 -62 -62 -63 -63 -63 -63 -62 -61 -58 -55 -54 -53 -53 -52 -52 -52 -53 -53 -52 -52 -53 -55 -59 -62 -66 -69 -72 -73 -74 -74 -75 -76 -76 -75 -73 -73 -75 -77 -79 -81 -83 -83 -83 -83 -83 -83 -82 -81 -79 -77 -76 -77 -78 -79 -76 -72 -68 -66 -65 -65 -65 -65 -65 -65 -67 -68 -70 -71 -73 -74 -76 -78 -80 -80 -79 -79 -79 -80 -81 -84 -86 -88 -89 -89 -89 -91 -92 -93 -92 -92 -92 -94 -96 -97 -98 -99 -99 -99 -99 -99 -100 -100 -100 -100 -100 -99 -98 -97 -95 -94 -93 -93 -93 -92 -92 -92 -92 -92 -92 -92 -92 -92 -91 -88 -86 -83 -81 -78 -76 -74 -73 -74 -73 -69 -65 -63 -64 -66 -66 -62 -55 -49 -47 -51 -54 -56 -57 -58 -59 -60 -60 -59 -58 -55 -52 -50 -48 -47 -43 -38 -35 -33 -36 -39 -35 -30 -31 -33 -37 -43 -50 -53 -48 -41 -36 -33 -28 -17 -18 -18 -17 -16 -18 -19 -19 -19 -21 -23 -26 -31 -36 -37 -32 -30 -32 -35 -35 -25 -10 2 6 -2 -7 -6 -4 -5 -7 -1 6 10 6 -1 -6 -9 -8 -3 2 -1 -7 -11 -11 -9 -11 -13 -14 -15 -19 -25 -33 -41 -47 -37 -19 -8 -7 -15 -23 -31 -38 -44 -49 -52 -54 -51 -46 -39 -39 -41 -44 -47 -49 -49 -49 -50 -50 -51 -52 -55 -58 -60 -61 -63 -64 -65 -65 -62 -61 -61 -62 -64 -69 -69 -62 -48 -32 -27 -29 -32 -32 -32 -36 -34 -31 -29 -32 -38 -42 -41 -38 -37 -39 -41 -45 -50 -55 -58 -57 -55 -51 -49 -48 -49 -52 -56 -60 -59 -53 -47 -45 -48 -56 -61 -63 -62 -63 -61 -63 -67 -72 -73 -68 -58 -48 -42 -39 -37 -35 -34 -34 -34 -35 -37 -40 -44 -48 -49 -50 -50 -50 -53 -57 -58 -58 -56 -54 -52 -51 -50 -51 -52 -53 -52 -50 -50 -53 -56 -60 -63 -66 -67 -69 -71 -73 -75 -78 -80 -83 -84 -84 -82 -83 -87 -93 -98 -97 -94 -89 -86 -86 -88 -88 -89 -90 -91 -93 -94 -94 -92 -88 -85 -82 -81 -80 -80 -80 -80 -80 -79 -77 -74 -74 -75 -78 -80 -80 -79 -76 -73 -70 -67 -65 -62 -61 -61 -62 -63 -62 -61 -60 -58 -56 -54 -53 -53 -52 -53 -53 -53 -54 -53 -53 -52 -54 -57 -60 -63 -67 -70 -72 -74 -74 -74 -76 -77 -77 -76 -74 -74 -76 -78 -81 -83 -84 -85 -86 -86 -85 -85 -84 -83 -82 -79 -77 -76 -76 -76 -75 -71 -68 -66 -65 -66 -67 -67 -67 -67 -68 -70 -72 -73 -74 -75 -76 -79 -80 -81 -80 -80 -80 -81 -82 -84 -86 -88 -88 -88 -88 -89 -91 -92 -93 -93 -94 -95 -97 -99 -100 -100 -100 -100 -99 -99 -99 -99 -99 -99 -98 -98 -97 -96 -94 -92 -91 -91 -91 -91 -91 -91 -91 -90 -90 -90 -91 -90 -89 -87 -85 -82 -80 -78 -75 -73 -72 -72 -71 -66 -58 -53 -55 -60 -62 -60 -56 -49 -47 -49 -50 -52 -54 -56 -57 -58 -58 -57 -56 -53 -50 -46 -44 -44 -44 -42 -39 -36 -34 -34 -32 -31 -32 -36 -40 -45 -50 -56 -56 -52 -48 -45 -39 -24 -24 -22 -19 -17 -18 -20 -22 -23 -23 -27 -30 -32 -34 -34 -28 -23 -19 -18 -15 -7 1 9 12 8 -1 -6 -10 -13 -12 -7 -4 -2 -1 -3 -11 -20 -24 -20 -10 -9 -14 -19 -19 -14 -11 -8 -7 -7 -16 -25 -32 -38 -45 -44 -33 -22 -18 -24 -33 -38 -42 -46 -51 -52 -49 -43 -36 -32 -36 -39 -42 -43 -45 -45 -45 -46 -47 -48 -49 -52 -56 -59 -62 -64 -67 -69 -71 -70 -71 -71 -70 -70 -70 -67 -58 -45 -32 -26 -29 -32 -33 -33 -35 -33 -32 -34 -39 -45 -47 -47 -46 -48 -49 -51 -54 -59 -66 -69 -67 -62 -56 -50 -49 -51 -53 -54 -55 -51 -47 -46 -49 -55 -61 -64 -65 -64 -65 -64 -65 -67 -69 -67 -62 -54 -47 -41 -37 -35 -34 -33 -33 -34 -36 -39 -43 -46 -49 -49 -49 -50 -52 -55 -56 -56 -55 -54 -53 -52 -52 -52 -53 -54 -53 -50 -48 -49 -54 -57 -60 -63 -66 -68 -70 -73 -75 -76 -78 -81 -84 -85 -86 -85 -85 -88 -93 -97 -97 -94 -90 -86 -85 -87 -89 -90 -92 -93 -95 -95 -94 -91 -88 -85 -82 -80 -79 -80 -80 -81 -80 -78 -76 -75 -75 -75 -76 -77 -77 -76 -74 -72 -69 -65 -62 -61 -60 -61 -62 -62 -61 -60 -59 -58 -56 -55 -54 -54 -54 -54 -55 -55 -55 -54 -54 -54 -56 -59 -61 -64 -69 -71 -73 -74 -75 -75 -76 -77 -77 -77 -75 -76 -78 -81 -84 -85 -87 -87 -87 -86 -86 -86 -86 -85 -83 -80 -77 -75 -74 -74 -73 -71 -68 -67 -67 -69 -69 -69 -69 -69 -70 -71 -72 -73 -74 -74 -76 -78 -79 -81 -81 -80 -81 -82 -83 -84 -85 -86 -86 -86 -86 -87 -90 -92 -93 -93 -95 -97 -99 -101 -102 -102 -102 -101 -100 -100 -100 -99 -98 -97 -97 -97 -96 -95 -94 -92 -91 -90 -90 -90 -91 -90 -90 -90 -89 -90 -89 -88 -87 -85 -83 -81 -79 -78 -76 -73 -72 -71 -70 -62 -50 -40 -41 -49 -54 -56 -55 -49 -46 -45 -47 -48 -51 -53 -55 -56 -56 -55 -54 -52 -48 -45 -42 -42 -42 -42 -41 -38 -36 -35 -34 -34 -36 -42 -49 -55 -57 -59 -60 -59 -58 -57 -51 -33 -28 -24 -20 -18 -18 -20 -22 -24 -27 -30 -31 -30 -29 -26 -22 -19 -14 -8 -0 4 5 5 6 5 -2 -8 -13 -17 -16 -15 -16 -17 -14 -11 -16 -25 -33 -34 -27 -23 -25 -30 -33 -29 -26 -19 -13 -11 -21 -31 -36 -39 -44 -50 -48 -40 -31 -30 -35 -37 -41 -44 -48 -48 -44 -37 -31 -28 -30 -33 -36 -38 -40 -41 -43 -44 -45 -46 -48 -50 -54 -57 -61 -64 -68 -71 -73 -73 -71 -70 -70 -68 -64 -59 -50 -38 -29 -25 -28 -33 -35 -33 -34 -35 -38 -42 -48 -54 -56 -57 -58 -61 -62 -63 -65 -69 -74 -77 -75 -69 -62 -54 -53 -54 -54 -53 -51 -47 -46 -49 -55 -60 -63 -62 -62 -62 -63 -62 -62 -60 -58 -54 -52 -51 -49 -43 -37 -35 -34 -33 -33 -34 -37 -41 -45 -48 -49 -50 -51 -52 -54 -57 -58 -57 -55 -53 -52 -52 -53 -54 -55 -55 -52 -49 -48 -51 -54 -57 -60 -64 -68 -70 -72 -74 -76 -78 -79 -82 -85 -87 -89 -89 -88 -88 -92 -97 -98 -95 -91 -85 -84 -86 -88 -91 -93 -95 -96 -95 -93 -90 -87 -84 -82 -80 -80 -80 -80 -80 -79 -78 -77 -76 -75 -74 -74 -74 -74 -73 -72 -70 -67 -64 -61 -60 -60 -62 -62 -63 -62 -60 -60 -59 -58 -57 -57 -57 -56 -56 -57 -57 -56 -56 -55 -56 -59 -60 -62 -65 -70 -73 -75 -75 -75 -75 -75 -76 -76 -76 -76 -77 -79 -82 -85 -88 -89 -89 -88 -86 -85 -85 -85 -85 -84 -82 -78 -75 -73 -72 -72 -71 -70 -69 -70 -71 -72 -72 -72 -72 -72 -73 -73 -73 -73 -74 -75 -76 -78 -80 -80 -81 -81 -82 -84 -84 -84 -84 -84 -83 -84 -87 -89 -92 -93 -94 -96 -99 -102 -103 -104 -104 -103 -102 -101 -101 -100 -99 -98 -97 -96 -96 -96 -95 -93 -91 -90 -90 -90 -90 -90 -90 -89 -89 -89 -89 -88 -87 -85 -83 -81 -79 -77 -76 -75 -74 -72 -71 -70 -62 -48 -36 -34 -37 -41 -46 -50 -48 -45 -43 -43 -45 -47 -49 -52 -53 -54 -53 -52 -50 -47 -43 -41 -39 -40 -40 -39 -37 -37 -38 -40 -41 -42 -49 -55 -59 -59 -59 -60 -61 -62 -63 -61 -40 -34 -26 -20 -19 -19 -19 -19 -22 -27 -30 -30 -28 -23 -19 -17 -15 -12 -7 1 5 4 -0 -4 -5 -6 -8 -11 -14 -17 -20 -23 -25 -26 -25 -26 -30 -36 -41 -41 -38 -38 -40 -43 -43 -42 -35 -25 -17 -25 -33 -39 -41 -43 -49 -53 -51 -45 -38 -30 -26 -27 -33 -39 -44 -47 -44 -37 -30 -28 -29 -30 -32 -35 -40 -45 -48 -48 -47 -48 -51 -55 -59 -62 -64 -67 -69 -69 -65 -61 -61 -62 -58 -50 -45 -39 -33 -27 -25 -29 -34 -38 -38 -38 -41 -46 -52 -57 -61 -64 -66 -68 -71 -73 -73 -74 -76 -78 -79 -78 -75 -69 -62 -59 -58 -58 -56 -52 -47 -47 -51 -55 -58 -56 -54 -55 -56 -56 -55 -53 -49 -45 -41 -44 -49 -51 -48 -40 -36 -34 -33 -33 -35 -38 -43 -46 -48 -49 -50 -52 -54 -57 -58 -59 -58 -57 -56 -55 -54 -54 -55 -56 -53 -50 -49 -49 -52 -54 -57 -61 -65 -70 -72 -73 -75 -78 -80 -81 -84 -86 -88 -91 -91 -89 -88 -91 -96 -97 -95 -91 -85 -83 -85 -88 -92 -94 -96 -96 -94 -91 -89 -87 -84 -82 -80 -80 -80 -79 -78 -78 -79 -78 -76 -74 -73 -72 -71 -71 -70 -69 -68 -66 -64 -62 -62 -62 -63 -64 -64 -63 -61 -61 -60 -60 -60 -59 -59 -59 -59 -58 -58 -57 -57 -58 -59 -61 -61 -62 -65 -69 -73 -75 -76 -75 -74 -74 -75 -75 -75 -75 -76 -79 -82 -86 -89 -91 -90 -88 -85 -84 -83 -83 -83 -83 -81 -78 -75 -73 -72 -72 -71 -71 -72 -73 -74 -74 -75 -75 -74 -74 -74 -74 -74 -74 -74 -75 -76 -77 -79 -80 -80 -81 -82 -84 -83 -82 -82 -82 -82 -84 -87 -90 -92 -94 -96 -98 -101 -104 -105 -106 -106 -106 -104 -103 -102 -101 -100 -98 -97 -96 -96 -96 -94 -93 -91 -90 -90 -90 -90 -90 -90 -89 -89 -88 -88 -86 -85 -83 -81 -78 -76 -75 -74 -74 -73 -72 -71 -70 -63 -51 -37 -33 -33 -35 -39 -44 -50 -48 -44 -41 -41 -43 -46 -48 -50 -51 -51 -50 -48 -46 -43 -40 -38 -38 -39 -39 -37 -38 -42 -47 -49 -51 -55 -58 -60 -59 -59 -60 -61 -62 -63 -64 -45 -37 -27 -21 -20 -20 -18 -18 -20 -25 -27 -26 -21 -14 -9 -8 -8 -8 -5 -1 3 3 1 -3 -6 -4 -2 -2 -7 -13 -17 -20 -23 -26 -30 -34 -35 -37 -40 -43 -44 -46 -48 -50 -50 -50 -47 -39 -29 -28 -33 -38 -40 -42 -48 -52 -53 -52 -48 -38 -27 -25 -30 -39 -44 -48 -51 -50 -44 -36 -32 -30 -30 -33 -39 -46 -50 -53 -53 -53 -54 -57 -59 -59 -59 -60 -59 -54 -44 -46 -53 -54 -45 -37 -36 -36 -34 -31 -28 -32 -40 -47 -48 -46 -51 -55 -59 -61 -63 -66 -68 -70 -72 -74 -75 -76 -77 -79 -79 -79 -78 -75 -70 -67 -65 -65 -63 -57 -51 -49 -50 -50 -48 -45 -47 -50 -50 -46 -44 -42 -40 -37 -36 -40 -48 -53 -53 -44 -37 -34 -33 -33 -35 -39 -43 -47 -48 -49 -50 -52 -56 -59 -60 -59 -58 -59 -60 -59 -58 -57 -56 -54 -50 -49 -49 -51 -52 -54 -57 -61 -66 -70 -73 -75 -77 -80 -82 -83 -85 -87 -89 -92 -91 -88 -87 -90 -94 -96 -95 -91 -85 -83 -85 -89 -93 -96 -97 -95 -93 -90 -88 -86 -84 -82 -81 -80 -79 -78 -77 -78 -78 -77 -75 -74 -73 -71 -69 -68 -67 -68 -68 -67 -66 -65 -64 -64 -66 -67 -67 -65 -63 -62 -62 -62 -62 -61 -61 -60 -60 -60 -59 -59 -59 -60 -61 -61 -62 -63 -65 -69 -72 -74 -75 -74 -73 -73 -73 -73 -73 -73 -74 -77 -81 -86 -89 -90 -89 -87 -85 -82 -81 -80 -80 -80 -79 -77 -76 -74 -73 -72 -72 -72 -74 -75 -76 -76 -77 -77 -77 -77 -76 -75 -75 -75 -75 -76 -76 -77 -78 -79 -79 -80 -82 -83 -82 -81 -80 -81 -83 -85 -88 -92 -94 -95 -97 -100 -103 -105 -106 -107 -107 -107 -106 -104 -103 -102 -100 -98 -97 -96 -95 -95 -94 -93 -92 -91 -91 -91 -91 -90 -90 -89 -89 -87 -86 -84 -82 -80 -78 -75 -73 -72 -72 -72 -72 -71 -71 -70 -65 -54 -40 -35 -33 -33 -35 -40 -51 -53 -49 -44 -40 -40 -42 -44 -47 -48 -49 -48 -47 -45 -42 -39 -37 -38 -42 -44 -44 -46 -50 -55 -57 -57 -58 -59 -59 -59 -59 -60 -60 -61 -62 -63 -46 -40 -31 -24 -22 -19 -17 -18 -21 -26 -26 -21 -12 -4 1 0 -1 -1 0 3 6 9 9 6 3 5 6 3 -4 -12 -14 -17 -19 -21 -26 -32 -32 -32 -32 -33 -34 -36 -40 -46 -51 -54 -54 -50 -45 -42 -45 -48 -50 -52 -54 -53 -53 -53 -54 -48 -37 -29 -28 -30 -34 -40 -47 -52 -52 -48 -43 -39 -37 -38 -39 -43 -49 -55 -54 -53 -54 -55 -55 -52 -50 -48 -43 -35 -31 -41 -49 -49 -41 -33 -32 -36 -39 -39 -35 -38 -45 -52 -55 -55 -59 -63 -65 -65 -65 -68 -70 -72 -72 -72 -73 -74 -76 -77 -78 -79 -79 -78 -78 -75 -72 -69 -67 -62 -57 -52 -48 -46 -44 -44 -44 -44 -41 -40 -41 -41 -40 -38 -39 -43 -50 -54 -52 -42 -36 -34 -33 -33 -34 -39 -44 -48 -49 -47 -49 -54 -59 -61 -57 -56 -56 -59 -62 -62 -61 -58 -54 -51 -49 -49 -51 -52 -53 -55 -58 -62 -67 -70 -73 -76 -79 -82 -83 -84 -86 -88 -91 -92 -89 -86 -85 -87 -93 -97 -96 -92 -85 -84 -86 -90 -94 -96 -97 -95 -93 -90 -88 -86 -83 -82 -81 -80 -78 -77 -77 -77 -77 -76 -75 -74 -72 -69 -67 -67 -67 -69 -69 -68 -68 -67 -67 -68 -69 -70 -69 -66 -65 -64 -64 -63 -63 -62 -62 -62 -62 -61 -61 -61 -61 -61 -61 -61 -61 -63 -65 -68 -71 -72 -73 -73 -72 -71 -71 -71 -71 -71 -73 -76 -80 -84 -87 -88 -88 -86 -84 -81 -78 -77 -77 -76 -76 -75 -75 -74 -72 -72 -72 -73 -75 -76 -77 -77 -78 -79 -79 -78 -77 -76 -75 -76 -76 -77 -77 -77 -77 -78 -78 -80 -81 -81 -80 -80 -80 -82 -84 -88 -91 -95 -97 -98 -99 -101 -104 -105 -107 -108 -108 -108 -106 -104 -102 -101 -100 -98 -97 -95 -95 -94 -94 -93 -93 -93 -92 -92 -91 -90 -90 -89 -88 -86 -84 -82 -80 -77 -74 -72 -71 -70 -70 -70 -70 -70 -70 -69 -65 -56 -43 -37 -34 -33 -34 -38 -50 -55 -54 -50 -44 -40 -39 -41 -43 -46 -46 -46 -45 -43 -41 -38 -38 -41 -50 -53 -54 -55 -57 -58 -59 -59 -59 -59 -59 -59 -59 -59 -60 -60 -62 -63 -45 -42 -35 -27 -21 -17 -15 -18 -24 -30 -29 -18 -6 3 5 1 -0 2 7 13 19 20 17 11 6 8 6 -1 -11 -15 -14 -14 -15 -18 -26 -29 -26 -23 -21 -18 -15 -17 -23 -31 -40 -49 -54 -55 -53 -54 -57 -60 -63 -65 -65 -61 -58 -56 -56 -51 -44 -37 -30 -22 -24 -31 -37 -41 -43 -46 -48 -47 -44 -42 -38 -41 -47 -52 -51 -48 -49 -49 -46 -40 -40 -38 -33 -28 -32 -43 -48 -46 -38 -29 -30 -37 -44 -45 -41 -42 -46 -51 -57 -60 -63 -65 -67 -67 -67 -68 -70 -72 -73 -74 -75 -76 -77 -77 -77 -78 -79 -80 -81 -80 -76 -70 -63 -60 -59 -56 -53 -51 -51 -48 -44 -41 -40 -42 -42 -40 -39 -40 -44 -50 -55 -54 -44 -32 -30 -31 -32 -33 -35 -41 -46 -50 -49 -48 -52 -59 -63 -58 -51 -51 -55 -59 -61 -62 -60 -55 -50 -49 -50 -52 -53 -54 -54 -56 -59 -63 -67 -71 -74 -77 -81 -83 -83 -84 -87 -89 -90 -90 -87 -85 -85 -89 -94 -97 -97 -92 -85 -84 -86 -90 -94 -96 -96 -95 -94 -92 -89 -86 -83 -82 -82 -80 -78 -76 -76 -76 -76 -76 -74 -72 -70 -68 -67 -67 -68 -70 -71 -71 -71 -70 -70 -72 -73 -73 -70 -67 -66 -65 -65 -64 -64 -64 -64 -64 -63 -63 -63 -63 -63 -62 -61 -61 -61 -62 -64 -67 -70 -71 -72 -71 -69 -68 -69 -69 -69 -70 -71 -74 -77 -81 -84 -86 -86 -85 -82 -79 -77 -75 -74 -73 -73 -73 -73 -73 -72 -73 -74 -75 -77 -77 -78 -79 -80 -81 -80 -79 -77 -75 -74 -75 -76 -77 -77 -77 -77 -77 -78 -78 -79 -79 -79 -79 -81 -84 -87 -91 -95 -98 -99 -99 -100 -102 -104 -105 -107 -108 -108 -107 -105 -102 -100 -99 -98 -97 -96 -95 -94 -94 -94 -95 -95 -95 -94 -93 -91 -90 -90 -89 -87 -85 -83 -80 -77 -74 -71 -69 -68 -69 -69 -69 -69 -69 -68 -68 -65 -59 -49 -41 -36 -34 -35 -39 -49 -55 -56 -55 -50 -43 -39 -38 -40 -43 -44 -44 -43 -41 -40 -40 -42 -46 -55 -58 -59 -59 -59 -59 -58 -59 -59 -59 -59 -59 -59 -59 -60 -60 -62 -63 -42 -41 -35 -26 -18 -13 -12 -17 -25 -34 -32 -16 -1 6 4 0 3 11 18 22 23 20 15 9 7 9 3 -5 -11 -9 -5 -7 -13 -23 -30 -23 -15 -11 -12 -12 -11 -13 -18 -26 -35 -45 -53 -58 -59 -59 -61 -64 -67 -68 -67 -65 -62 -60 -57 -53 -49 -44 -37 -26 -24 -27 -29 -28 -29 -37 -44 -46 -44 -43 -40 -42 -45 -48 -43 -39 -39 -39 -36 -31 -34 -35 -33 -32 -39 -46 -46 -41 -34 -29 -32 -40 -47 -47 -45 -44 -45 -49 -56 -61 -63 -64 -65 -66 -66 -67 -69 -72 -75 -77 -78 -77 -76 -76 -77 -78 -79 -80 -80 -80 -76 -69 -60 -57 -59 -61 -61 -61 -60 -54 -48 -44 -42 -43 -41 -40 -41 -45 -50 -56 -57 -53 -40 -29 -28 -29 -31 -32 -37 -44 -50 -54 -54 -55 -61 -65 -62 -50 -48 -53 -58 -60 -60 -59 -55 -50 -48 -51 -53 -54 -55 -55 -55 -56 -59 -63 -67 -71 -74 -78 -82 -84 -83 -84 -87 -88 -89 -87 -85 -86 -88 -92 -96 -100 -99 -93 -84 -84 -87 -90 -93 -94 -95 -96 -96 -94 -90 -86 -83 -82 -81 -79 -77 -76 -75 -75 -76 -76 -74 -71 -69 -68 -68 -68 -69 -71 -73 -74 -74 -73 -73 -74 -75 -73 -70 -67 -65 -65 -65 -66 -65 -66 -66 -66 -66 -66 -66 -66 -66 -64 -63 -61 -61 -61 -63 -66 -69 -70 -70 -69 -68 -67 -67 -68 -68 -69 -70 -71 -74 -77 -81 -84 -85 -84 -81 -78 -76 -74 -73 -72 -71 -71 -71 -72 -73 -75 -77 -78 -78 -78 -79 -80 -81 -81 -80 -78 -75 -73 -72 -73 -74 -75 -76 -77 -77 -76 -76 -77 -78 -78 -79 -81 -83 -86 -90 -94 -98 -100 -100 -100 -101 -102 -104 -105 -107 -107 -108 -106 -103 -101 -99 -98 -97 -96 -95 -94 -94 -94 -95 -96 -97 -97 -96 -94 -92 -91 -90 -89 -87 -84 -82 -79 -75 -70 -67 -66 -66 -67 -68 -68 -68 -67 -66 -65 -63 -60 -55 -47 -40 -37 -37 -44 -51 -55 -56 -56 -54 -46 -40 -37 -38 -40 -42 -42 -41 -39 -40 -45 -49 -52 -57 -59 -60 -60 -59 -58 -58 -58 -59 -59 -59 -59 -59 -59 -60 -61 -62 -63 -42 -40 -31 -20 -12 -9 -10 -14 -21 -29 -34 -19 -1 10 10 8 12 17 22 24 22 18 13 10 9 8 1 -4 -4 0 -1 -8 -17 -23 -21 -9 -3 -6 -13 -17 -18 -20 -24 -30 -39 -48 -55 -59 -58 -56 -55 -56 -58 -58 -57 -59 -60 -60 -57 -55 -53 -50 -45 -37 -33 -31 -29 -26 -24 -32 -39 -42 -41 -42 -42 -43 -42 -39 -31 -27 -30 -32 -31 -30 -35 -37 -38 -39 -44 -45 -43 -37 -32 -31 -37 -43 -46 -46 -47 -49 -50 -53 -58 -60 -62 -64 -66 -67 -68 -70 -71 -73 -75 -77 -75 -73 -72 -75 -78 -78 -77 -78 -78 -79 -78 -73 -67 -63 -65 -67 -68 -68 -68 -64 -58 -52 -48 -46 -44 -44 -46 -49 -54 -57 -56 -51 -39 -31 -30 -31 -31 -33 -38 -45 -53 -59 -63 -64 -65 -62 -53 -45 -50 -57 -61 -62 -63 -58 -50 -46 -48 -54 -55 -56 -57 -57 -56 -57 -59 -63 -68 -71 -75 -79 -83 -84 -83 -84 -86 -87 -87 -85 -86 -89 -94 -99 -101 -102 -101 -94 -84 -84 -87 -90 -91 -92 -94 -96 -97 -95 -91 -87 -84 -82 -80 -78 -76 -74 -73 -73 -76 -75 -73 -70 -69 -69 -68 -69 -70 -72 -74 -75 -76 -75 -75 -76 -75 -73 -69 -66 -65 -65 -66 -67 -67 -68 -68 -69 -70 -70 -70 -70 -70 -68 -65 -64 -63 -62 -63 -65 -67 -69 -70 -69 -68 -67 -67 -68 -69 -69 -68 -69 -70 -74 -79 -82 -84 -83 -81 -79 -76 -74 -72 -72 -72 -71 -71 -72 -74 -76 -78 -79 -78 -78 -79 -80 -80 -79 -78 -75 -72 -70 -69 -70 -71 -73 -74 -75 -75 -74 -74 -75 -78 -80 -82 -85 -88 -91 -95 -98 -101 -102 -101 -101 -101 -102 -104 -106 -107 -107 -107 -106 -103 -101 -99 -98 -97 -95 -93 -93 -93 -94 -96 -98 -99 -98 -96 -94 -92 -91 -90 -88 -86 -84 -81 -77 -73 -68 -65 -63 -63 -65 -67 -67 -67 -66 -64 -63 -61 -59 -57 -53 -47 -43 -43 -50 -54 -55 -56 -56 -55 -51 -46 -40 -37 -39 -40 -41 -40 -40 -44 -51 -57 -59 -60 -60 -59 -59 -59 -58 -58 -58 -59 -59 -59 -59 -59 -59 -60 -61 -62 -63 -42 -41 -30 -17 -9 -8 -12 -14 -19 -26 -35 -25 -6 9 15 15 16 16 17 18 17 14 13 12 13 9 4 3 5 7 3 -7 -13 -14 -7 1 -0 -7 -17 -25 -30 -32 -34 -36 -41 -49 -54 -55 -52 -46 -42 -42 -43 -44 -45 -51 -55 -56 -55 -56 -55 -54 -52 -49 -45 -42 -39 -35 -32 -35 -39 -40 -40 -39 -37 -37 -33 -26 -19 -21 -26 -30 -31 -33 -37 -38 -39 -40 -43 -43 -41 -37 -34 -35 -40 -44 -45 -46 -54 -59 -62 -63 -64 -64 -67 -69 -71 -72 -73 -73 -73 -72 -71 -71 -69 -67 -69 -74 -77 -76 -75 -75 -75 -77 -78 -77 -74 -71 -72 -72 -71 -70 -71 -70 -67 -62 -56 -53 -52 -51 -51 -53 -56 -58 -56 -49 -38 -32 -31 -33 -34 -35 -40 -47 -54 -61 -64 -65 -63 -56 -47 -46 -54 -61 -64 -63 -58 -49 -44 -45 -51 -56 -57 -58 -58 -58 -57 -58 -61 -64 -68 -72 -76 -81 -85 -85 -83 -83 -84 -86 -85 -85 -88 -93 -99 -102 -103 -103 -100 -92 -84 -84 -86 -88 -90 -92 -95 -96 -97 -95 -91 -88 -84 -81 -79 -76 -74 -72 -71 -73 -75 -74 -71 -69 -69 -69 -69 -69 -69 -71 -74 -75 -75 -74 -74 -75 -74 -72 -68 -66 -65 -66 -67 -67 -68 -69 -71 -73 -74 -74 -74 -74 -74 -72 -69 -67 -66 -65 -64 -65 -66 -67 -68 -68 -67 -66 -67 -68 -69 -69 -67 -67 -68 -72 -76 -80 -83 -83 -82 -80 -77 -75 -73 -73 -73 -72 -72 -72 -73 -75 -77 -77 -76 -76 -77 -77 -77 -76 -74 -71 -69 -68 -67 -68 -69 -70 -71 -72 -72 -72 -73 -76 -80 -83 -86 -89 -93 -97 -99 -101 -103 -103 -103 -102 -102 -103 -105 -106 -107 -107 -107 -107 -105 -103 -102 -101 -98 -96 -94 -94 -95 -96 -97 -99 -99 -98 -95 -93 -91 -90 -89 -88 -86 -83 -80 -76 -71 -67 -63 -61 -61 -63 -65 -66 -66 -64 -63 -61 -59 -58 -56 -55 -52 -50 -51 -53 -55 -55 -56 -56 -57 -57 -54 -48 -42 -42 -43 -44 -45 -46 -52 -58 -62 -62 -61 -60 -59 -59 -58 -58 -58 -58 -59 -59 -59 -59 -59 -60 -61 -61 -62 -63 -42 -37 -27 -17 -11 -13 -16 -15 -15 -21 -33 -31 -14 4 16 18 14 7 2 3 7 9 11 13 13 8 8 8 9 7 2 -5 -7 -5 -1 -2 -7 -14 -23 -31 -39 -42 -39 -34 -34 -41 -46 -47 -42 -34 -29 -30 -34 -39 -43 -49 -53 -55 -55 -53 -52 -54 -56 -57 -52 -50 -49 -47 -42 -40 -41 -42 -40 -30 -19 -19 -18 -16 -16 -24 -29 -32 -32 -34 -37 -38 -39 -41 -43 -43 -41 -39 -38 -39 -42 -45 -47 -52 -61 -67 -71 -72 -73 -73 -74 -75 -75 -73 -71 -68 -66 -64 -64 -63 -64 -67 -71 -75 -74 -72 -71 -71 -71 -72 -73 -73 -72 -72 -72 -71 -69 -67 -68 -70 -71 -69 -64 -62 -61 -59 -57 -57 -58 -59 -56 -50 -39 -33 -33 -34 -36 -38 -43 -49 -54 -58 -61 -63 -59 -52 -46 -51 -58 -62 -62 -57 -49 -43 -43 -46 -52 -57 -60 -62 -61 -58 -57 -59 -63 -66 -69 -73 -78 -83 -86 -84 -82 -82 -84 -85 -85 -87 -91 -96 -100 -101 -102 -101 -97 -90 -84 -85 -86 -88 -89 -92 -95 -97 -97 -95 -92 -88 -84 -80 -78 -76 -74 -73 -73 -75 -74 -72 -70 -68 -69 -70 -69 -69 -69 -70 -72 -73 -72 -71 -72 -74 -73 -71 -68 -66 -66 -66 -67 -67 -68 -71 -73 -75 -77 -78 -78 -77 -77 -75 -73 -72 -70 -68 -67 -66 -65 -65 -64 -64 -64 -65 -66 -68 -69 -68 -67 -65 -66 -70 -75 -80 -82 -83 -82 -81 -79 -77 -75 -74 -74 -74 -73 -73 -73 -74 -75 -74 -74 -73 -73 -73 -72 -71 -70 -69 -68 -67 -66 -66 -67 -68 -69 -69 -69 -70 -73 -78 -83 -87 -91 -94 -98 -101 -102 -103 -105 -106 -105 -105 -104 -104 -106 -108 -108 -109 -110 -109 -108 -106 -105 -103 -100 -98 -97 -97 -98 -99 -99 -99 -99 -97 -95 -93 -92 -91 -89 -87 -84 -81 -78 -73 -69 -65 -63 -61 -61 -62 -64 -65 -64 -63 -61 -59 -58 -56 -55 -54 -53 -53 -54 -54 -54 -55 -56 -57 -58 -60 -59 -56 -51 -49 -50 -51 -53 -55 -59 -62 -63 -62 -61 -60 -60 -59 -58 -58 -58 -58 -58 -59 -59 -59 -60 -61 -61 -62 -63 -63 -38 -28 -17 -11 -11 -20 -24 -20 -15 -15 -25 -29 -17 -0 15 19 10 -3 -13 -17 -13 -4 5 10 8 5 8 10 8 2 -5 -9 -9 -9 -10 -14 -19 -24 -30 -36 -44 -47 -41 -30 -23 -31 -37 -37 -29 -21 -22 -29 -38 -45 -50 -52 -53 -52 -48 -45 -46 -49 -52 -55 -54 -51 -50 -49 -46 -42 -45 -45 -39 -23 -14 -16 -17 -17 -22 -29 -32 -31 -31 -35 -39 -41 -42 -43 -43 -44 -44 -44 -43 -44 -47 -51 -55 -61 -67 -70 -70 -70 -71 -74 -76 -73 -68 -62 -60 -59 -59 -60 -63 -66 -70 -73 -74 -73 -69 -67 -65 -66 -68 -69 -70 -70 -70 -70 -69 -66 -63 -61 -63 -68 -71 -70 -68 -69 -68 -66 -63 -61 -59 -59 -58 -53 -45 -38 -35 -35 -37 -40 -45 -49 -52 -55 -58 -60 -56 -50 -48 -55 -60 -61 -58 -53 -47 -45 -45 -47 -52 -59 -64 -64 -62 -58 -59 -61 -64 -67 -70 -75 -81 -85 -85 -82 -81 -82 -83 -85 -87 -89 -92 -96 -100 -101 -101 -99 -94 -87 -84 -85 -87 -88 -89 -93 -95 -97 -97 -96 -93 -89 -85 -81 -79 -77 -76 -76 -76 -76 -72 -70 -68 -68 -70 -71 -70 -70 -69 -69 -69 -69 -69 -68 -70 -72 -72 -70 -68 -67 -66 -66 -67 -67 -69 -72 -75 -78 -80 -80 -80 -79 -78 -76 -75 -75 -74 -72 -70 -67 -64 -62 -60 -59 -60 -63 -65 -67 -68 -67 -66 -64 -65 -70 -75 -79 -82 -82 -82 -82 -81 -78 -76 -76 -75 -75 -74 -73 -72 -72 -72 -72 -72 -71 -70 -69 -68 -67 -67 -67 -67 -66 -65 -65 -66 -66 -66 -67 -68 -71 -75 -82 -87 -91 -95 -100 -103 -105 -105 -106 -107 -108 -108 -107 -107 -108 -109 -110 -111 -112 -114 -113 -111 -109 -107 -105 -102 -101 -101 -102 -102 -102 -101 -100 -99 -97 -96 -94 -93 -92 -89 -85 -82 -78 -74 -71 -67 -65 -63 -62 -61 -61 -62 -63 -62 -61 -59 -58 -56 -55 -53 -53 -52 -53 -53 -53 -54 -55 -56 -57 -58 -60 -61 -61 -59 -58 -58 -59 -60 -62 -63 -63 -63 -62 -61 -60 -59 -58 -58 -58 -58 -58 -58 -59 -59 -60 -60 -61 -62 -62 -63 -64 -36 -19 -8 -5 -11 -24 -33 -31 -22 -15 -17 -22 -13 2 15 18 6 -6 -18 -29 -34 -23 -8 2 2 -0 5 7 3 -4 -12 -16 -18 -19 -23 -28 -28 -28 -31 -36 -49 -55 -48 -33 -21 -31 -36 -31 -19 -10 -14 -23 -34 -44 -48 -49 -47 -41 -33 -34 -40 -43 -45 -48 -51 -50 -48 -45 -42 -43 -45 -44 -36 -23 -17 -17 -19 -22 -29 -33 -33 -33 -35 -39 -42 -44 -44 -45 -46 -47 -48 -48 -49 -51 -54 -58 -63 -68 -70 -67 -65 -65 -68 -69 -64 -57 -53 -53 -57 -61 -64 -67 -71 -75 -76 -73 -68 -63 -62 -62 -64 -66 -69 -70 -69 -68 -66 -64 -62 -62 -62 -62 -66 -70 -71 -70 -68 -69 -69 -65 -61 -57 -55 -57 -59 -59 -54 -46 -40 -37 -37 -40 -45 -47 -49 -52 -57 -59 -55 -50 -51 -57 -59 -58 -55 -51 -51 -50 -48 -48 -53 -62 -67 -66 -61 -59 -61 -63 -65 -69 -74 -79 -83 -83 -82 -79 -81 -82 -85 -87 -91 -93 -96 -100 -102 -102 -99 -94 -88 -83 -84 -87 -88 -89 -90 -93 -96 -97 -98 -97 -95 -91 -87 -84 -81 -80 -80 -79 -79 -76 -72 -69 -67 -68 -70 -72 -72 -71 -69 -68 -68 -67 -67 -67 -69 -71 -71 -70 -68 -67 -67 -67 -67 -67 -70 -74 -77 -79 -81 -82 -82 -81 -79 -77 -76 -76 -76 -74 -72 -68 -65 -61 -57 -56 -58 -60 -63 -65 -66 -66 -65 -64 -65 -70 -75 -79 -81 -81 -82 -82 -81 -79 -77 -77 -77 -76 -75 -74 -73 -72 -71 -71 -71 -69 -68 -66 -66 -66 -66 -66 -66 -65 -65 -65 -65 -65 -65 -67 -70 -75 -81 -88 -92 -96 -101 -105 -108 -109 -109 -109 -110 -111 -111 -110 -110 -111 -112 -112 -113 -116 -118 -116 -113 -110 -108 -105 -104 -104 -105 -107 -107 -105 -103 -101 -100 -98 -97 -96 -95 -92 -89 -84 -79 -75 -71 -68 -66 -64 -63 -62 -61 -61 -61 -61 -60 -59 -57 -56 -54 -53 -52 -52 -52 -52 -52 -53 -54 -55 -56 -57 -58 -59 -60 -61 -61 -61 -61 -62 -63 -64 -64 -64 -63 -62 -61 -60 -59 -58 -58 -58 -58 -58 -59 -59 -60 -60 -60 -60 -61 -62 -63 -63 -37 -19 -6 -2 -9 -22 -36 -39 -33 -22 -17 -16 -4 10 17 12 3 -4 -12 -23 -35 -36 -24 -11 -5 -3 1 0 -2 -3 -6 -12 -18 -24 -31 -35 -32 -28 -28 -35 -47 -57 -59 -51 -38 -39 -39 -31 -18 -12 -15 -20 -27 -34 -40 -45 -45 -39 -31 -33 -38 -39 -41 -44 -48 -48 -47 -43 -39 -39 -40 -35 -27 -16 -15 -18 -24 -31 -38 -40 -40 -41 -43 -45 -46 -46 -47 -49 -51 -52 -53 -54 -55 -56 -60 -63 -67 -69 -67 -64 -63 -64 -66 -63 -54 -48 -47 -54 -60 -64 -67 -70 -74 -74 -71 -64 -56 -53 -56 -59 -62 -65 -67 -65 -62 -60 -58 -57 -60 -65 -69 -71 -73 -74 -73 -71 -67 -63 -57 -52 -49 -49 -53 -59 -63 -63 -58 -50 -44 -40 -38 -39 -44 -47 -49 -52 -56 -57 -54 -51 -53 -57 -58 -58 -57 -56 -57 -55 -51 -50 -55 -65 -68 -65 -60 -61 -63 -64 -67 -73 -78 -80 -82 -81 -79 -77 -80 -83 -86 -89 -94 -98 -101 -104 -104 -102 -96 -89 -84 -82 -84 -87 -89 -90 -92 -94 -96 -98 -99 -98 -96 -93 -90 -87 -85 -84 -83 -82 -81 -77 -74 -71 -69 -69 -71 -73 -72 -71 -70 -68 -67 -67 -67 -69 -70 -70 -70 -70 -69 -68 -68 -68 -69 -68 -71 -75 -78 -81 -82 -83 -83 -82 -80 -78 -77 -77 -77 -75 -73 -70 -66 -61 -56 -54 -56 -58 -61 -64 -65 -66 -65 -65 -67 -71 -75 -78 -80 -80 -81 -81 -81 -79 -78 -78 -78 -77 -76 -76 -74 -72 -71 -70 -70 -69 -68 -67 -67 -67 -67 -67 -67 -66 -65 -65 -65 -65 -67 -70 -75 -81 -88 -93 -98 -102 -107 -112 -114 -113 -113 -112 -113 -113 -113 -113 -114 -115 -114 -115 -117 -120 -120 -116 -113 -110 -108 -107 -107 -109 -110 -111 -110 -108 -105 -103 -101 -100 -99 -98 -96 -93 -88 -83 -77 -72 -69 -66 -65 -63 -62 -62 -61 -61 -60 -59 -58 -57 -56 -54 -53 -52 -52 -52 -52 -52 -52 -53 -54 -55 -56 -57 -58 -60 -61 -61 -61 -61 -61 -62 -62 -63 -64 -64 -63 -62 -60 -59 -58 -58 -58 -59 -59 -59 -59 -60 -60 -60 -59 -59 -60 -61 -61 -62 -36 -26 -12 -4 -4 -14 -28 -37 -38 -33 -27 -16 1 12 12 1 -4 -8 -13 -20 -29 -36 -30 -19 -10 -5 -6 -10 -9 -4 -5 -14 -25 -34 -41 -43 -38 -34 -32 -32 -36 -48 -60 -64 -58 -55 -47 -36 -24 -19 -19 -21 -23 -28 -33 -40 -43 -42 -37 -37 -39 -41 -42 -44 -44 -46 -47 -43 -33 -29 -32 -31 -24 -13 -16 -24 -33 -41 -48 -50 -51 -52 -52 -51 -50 -51 -54 -56 -58 -58 -57 -58 -59 -62 -64 -67 -68 -69 -67 -65 -65 -64 -64 -58 -51 -48 -50 -57 -61 -64 -67 -70 -73 -68 -60 -53 -48 -49 -53 -56 -59 -62 -61 -56 -54 -53 -54 -57 -64 -70 -75 -76 -76 -75 -73 -68 -59 -52 -50 -50 -52 -56 -63 -67 -66 -60 -50 -45 -43 -42 -40 -39 -43 -46 -49 -52 -57 -55 -51 -50 -54 -57 -60 -62 -65 -69 -66 -59 -53 -52 -59 -67 -66 -62 -59 -62 -64 -66 -71 -77 -81 -80 -80 -78 -76 -77 -81 -85 -89 -92 -97 -101 -104 -105 -104 -99 -91 -84 -81 -82 -86 -89 -90 -92 -93 -95 -97 -98 -99 -99 -97 -95 -92 -90 -88 -87 -85 -84 -82 -79 -76 -74 -72 -71 -74 -74 -74 -72 -69 -67 -67 -68 -69 -70 -70 -70 -70 -70 -70 -70 -70 -70 -70 -70 -72 -75 -79 -81 -82 -84 -84 -82 -81 -79 -79 -78 -76 -74 -73 -71 -67 -62 -57 -55 -57 -59 -62 -64 -66 -67 -67 -68 -69 -72 -75 -77 -78 -80 -81 -81 -80 -78 -78 -78 -78 -78 -78 -78 -76 -74 -71 -70 -70 -70 -70 -70 -70 -70 -69 -69 -68 -67 -66 -66 -67 -68 -71 -76 -81 -88 -95 -100 -104 -109 -113 -117 -118 -117 -116 -115 -115 -115 -115 -116 -118 -118 -117 -117 -119 -121 -120 -117 -113 -111 -110 -111 -112 -114 -115 -115 -113 -110 -107 -104 -103 -101 -100 -98 -96 -92 -86 -81 -76 -71 -68 -66 -64 -63 -62 -62 -61 -61 -60 -59 -57 -56 -54 -53 -52 -52 -52 -52 -52 -52 -53 -54 -55 -56 -57 -58 -59 -60 -61 -62 -62 -62 -62 -62 -63 -63 -63 -63 -62 -61 -59 -58 -57 -58 -58 -59 -60 -60 -60 -60 -60 -59 -59 -59 -59 -59 -59 -60 -32 -32 -24 -13 -5 -5 -13 -24 -35 -43 -44 -32 -17 -5 -1 -8 -10 -10 -15 -24 -34 -40 -39 -31 -19 -9 -14 -18 -17 -12 -11 -17 -27 -37 -45 -47 -45 -43 -41 -39 -31 -36 -48 -61 -65 -62 -55 -45 -35 -26 -22 -21 -22 -25 -30 -37 -42 -45 -44 -43 -44 -45 -45 -44 -42 -44 -42 -34 -21 -21 -31 -33 -27 -17 -23 -34 -44 -50 -55 -58 -60 -60 -60 -58 -58 -60 -61 -62 -61 -59 -59 -60 -63 -66 -68 -69 -70 -69 -68 -67 -66 -64 -62 -57 -53 -52 -55 -59 -62 -65 -68 -71 -73 -63 -53 -47 -47 -50 -52 -54 -57 -59 -56 -51 -50 -53 -56 -61 -68 -73 -77 -77 -76 -74 -68 -60 -49 -47 -49 -53 -58 -63 -70 -72 -68 -58 -48 -43 -42 -41 -39 -41 -45 -50 -54 -59 -58 -52 -48 -50 -56 -60 -61 -62 -66 -73 -66 -58 -53 -55 -61 -64 -62 -60 -59 -63 -65 -69 -76 -82 -81 -79 -78 -76 -74 -77 -82 -86 -90 -93 -98 -101 -103 -102 -100 -94 -86 -80 -80 -84 -87 -89 -91 -92 -93 -96 -98 -99 -99 -98 -97 -96 -94 -92 -90 -88 -86 -84 -83 -83 -81 -78 -76 -75 -77 -77 -75 -72 -70 -68 -67 -69 -72 -72 -71 -69 -69 -71 -72 -71 -71 -71 -72 -72 -74 -76 -79 -81 -82 -83 -83 -82 -81 -81 -80 -78 -76 -74 -73 -71 -67 -62 -58 -57 -59 -60 -62 -64 -67 -69 -70 -71 -71 -73 -74 -76 -78 -80 -81 -80 -78 -77 -77 -78 -78 -78 -79 -78 -77 -74 -71 -70 -70 -70 -71 -71 -71 -71 -71 -70 -69 -68 -68 -68 -70 -73 -78 -83 -89 -95 -102 -108 -112 -116 -119 -121 -121 -120 -118 -118 -118 -118 -118 -119 -121 -120 -119 -120 -121 -122 -120 -118 -116 -114 -114 -116 -117 -118 -118 -117 -114 -111 -108 -106 -104 -103 -101 -98 -95 -90 -85 -79 -75 -72 -69 -66 -64 -63 -62 -62 -61 -61 -60 -59 -57 -55 -53 -52 -52 -52 -52 -53 -53 -53 -54 -55 -56 -57 -58 -58 -59 -61 -62 -62 -63 -63 -64 -64 -63 -63 -63 -62 -61 -60 -59 -57 -57 -58 -59 -60 -61 -62 -61 -61 -60 -59 -58 -58 -58 -58 -57 -58 -38 -41 -37 -25 -10 1 -2 -15 -26 -36 -43 -43 -36 -26 -16 -13 -12 -12 -15 -22 -31 -38 -40 -34 -21 -12 -20 -25 -25 -19 -14 -17 -26 -37 -46 -48 -48 -49 -50 -48 -34 -29 -37 -51 -63 -62 -59 -53 -45 -34 -28 -26 -26 -28 -33 -37 -42 -46 -49 -49 -48 -48 -46 -41 -37 -36 -29 -18 -11 -24 -36 -37 -31 -24 -31 -43 -52 -57 -59 -60 -62 -63 -63 -63 -64 -65 -64 -62 -59 -58 -59 -62 -66 -70 -71 -71 -70 -70 -69 -67 -66 -64 -62 -58 -56 -56 -59 -62 -65 -67 -71 -74 -72 -59 -50 -46 -49 -52 -53 -55 -56 -57 -52 -50 -52 -56 -61 -66 -71 -74 -76 -76 -73 -68 -61 -52 -45 -46 -50 -55 -61 -67 -71 -70 -63 -54 -47 -44 -43 -41 -39 -42 -48 -53 -57 -59 -54 -48 -47 -52 -58 -61 -62 -66 -72 -74 -63 -56 -54 -56 -60 -63 -64 -63 -62 -65 -69 -76 -82 -83 -78 -77 -77 -75 -74 -77 -82 -87 -90 -93 -96 -100 -100 -98 -94 -87 -80 -77 -80 -84 -87 -89 -91 -92 -94 -96 -98 -99 -99 -98 -97 -95 -94 -92 -91 -90 -88 -87 -87 -87 -85 -82 -79 -79 -81 -79 -76 -72 -70 -68 -68 -70 -73 -74 -72 -70 -69 -71 -72 -72 -72 -73 -73 -73 -76 -78 -80 -81 -82 -83 -83 -81 -81 -81 -81 -80 -77 -75 -73 -71 -67 -62 -60 -60 -60 -62 -62 -65 -68 -71 -72 -72 -72 -73 -74 -76 -78 -80 -81 -79 -77 -76 -76 -76 -76 -77 -78 -77 -75 -72 -69 -68 -68 -69 -70 -70 -70 -70 -70 -70 -70 -70 -70 -72 -75 -80 -85 -90 -96 -103 -111 -116 -119 -120 -122 -123 -122 -121 -121 -120 -121 -121 -121 -121 -122 -122 -122 -122 -122 -122 -121 -120 -119 -118 -119 -120 -120 -120 -120 -118 -116 -113 -110 -108 -106 -104 -101 -98 -93 -88 -83 -78 -75 -72 -69 -67 -65 -63 -62 -62 -61 -61 -60 -59 -57 -54 -52 -51 -52 -52 -53 -54 -54 -55 -56 -57 -58 -58 -59 -59 -61 -62 -63 -63 -64 -64 -64 -64 -64 -63 -63 -62 -60 -59 -58 -57 -57 -58 -59 -61 -62 -62 -62 -62 -61 -59 -59 -58 -58 -57 -57 -56 -40 -41 -40 -33 -22 -8 2 -6 -15 -24 -33 -39 -42 -38 -28 -17 -14 -14 -16 -19 -25 -34 -38 -32 -19 -12 -23 -31 -33 -27 -17 -16 -24 -36 -46 -48 -49 -52 -54 -54 -42 -31 -33 -44 -57 -59 -60 -58 -53 -45 -39 -36 -36 -37 -41 -43 -45 -47 -49 -50 -47 -45 -41 -33 -26 -22 -13 -8 -15 -34 -39 -36 -30 -30 -39 -49 -56 -58 -57 -58 -58 -59 -60 -62 -63 -62 -60 -58 -58 -60 -63 -66 -69 -71 -71 -70 -70 -69 -68 -67 -66 -65 -64 -60 -58 -59 -62 -64 -65 -68 -71 -71 -64 -53 -48 -48 -53 -56 -57 -57 -57 -55 -51 -52 -56 -61 -66 -69 -72 -73 -74 -72 -66 -59 -52 -47 -46 -48 -52 -56 -62 -68 -69 -65 -58 -51 -46 -45 -44 -43 -42 -43 -47 -52 -56 -56 -49 -48 -51 -56 -59 -61 -65 -72 -78 -74 -62 -55 -54 -57 -61 -65 -68 -70 -73 -76 -80 -83 -83 -77 -74 -76 -76 -74 -73 -79 -84 -87 -89 -91 -95 -97 -96 -91 -84 -78 -76 -77 -81 -85 -87 -90 -91 -93 -94 -96 -97 -98 -97 -96 -95 -94 -93 -92 -92 -91 -91 -90 -91 -90 -87 -84 -81 -81 -82 -80 -76 -72 -70 -68 -67 -69 -74 -75 -73 -71 -69 -70 -72 -72 -72 -72 -73 -75 -77 -79 -81 -81 -81 -81 -80 -79 -79 -81 -82 -81 -79 -77 -74 -71 -67 -63 -61 -62 -63 -63 -63 -66 -69 -71 -72 -72 -72 -73 -74 -77 -79 -80 -80 -78 -77 -76 -75 -75 -74 -75 -75 -74 -72 -69 -67 -66 -67 -67 -67 -67 -67 -68 -68 -69 -70 -71 -73 -76 -81 -87 -92 -98 -104 -112 -120 -124 -124 -123 -123 -124 -124 -124 -123 -123 -123 -123 -122 -122 -123 -123 -124 -124 -123 -122 -122 -121 -122 -122 -122 -122 -121 -121 -121 -119 -117 -114 -111 -108 -106 -104 -101 -96 -91 -86 -81 -77 -75 -72 -70 -68 -66 -64 -63 -63 -62 -61 -60 -59 -57 -55 -53 -52 -53 -54 -55 -56 -56 -57 -58 -59 -60 -60 -60 -61 -62 -63 -63 -64 -64 -65 -65 -64 -64 -63 -62 -61 -60 -58 -58 -57 -58 -59 -60 -61 -62 -63 -63 -63 -61 -60 -59 -58 -57 -57 -56 -56 -33 -34 -34 -32 -29 -23 -9 -3 -5 -13 -23 -31 -40 -41 -36 -24 -20 -21 -20 -18 -21 -31 -37 -31 -18 -11 -24 -35 -40 -37 -26 -20 -25 -35 -44 -46 -49 -50 -52 -53 -45 -36 -33 -38 -48 -55 -58 -58 -56 -54 -50 -48 -46 -47 -49 -49 -48 -48 -48 -45 -39 -34 -27 -17 -11 -9 -7 -12 -26 -38 -35 -30 -29 -36 -48 -55 -57 -54 -53 -56 -56 -55 -56 -56 -56 -56 -58 -60 -64 -67 -69 -70 -70 -69 -68 -68 -69 -71 -70 -69 -67 -66 -65 -63 -63 -64 -65 -64 -65 -67 -66 -61 -51 -47 -49 -55 -59 -60 -59 -58 -56 -54 -54 -57 -61 -64 -67 -70 -70 -70 -69 -66 -55 -48 -45 -47 -50 -52 -55 -59 -64 -69 -66 -60 -54 -50 -47 -44 -44 -44 -44 -44 -47 -51 -54 -52 -48 -50 -55 -60 -62 -65 -72 -78 -81 -74 -63 -57 -56 -57 -61 -67 -73 -78 -81 -82 -81 -78 -73 -71 -73 -74 -72 -70 -73 -81 -85 -86 -86 -90 -93 -93 -88 -79 -73 -73 -75 -78 -82 -85 -87 -90 -92 -92 -93 -95 -96 -96 -96 -95 -94 -93 -92 -92 -91 -91 -91 -92 -92 -90 -87 -84 -81 -82 -82 -79 -75 -71 -69 -66 -65 -67 -73 -76 -74 -71 -69 -70 -71 -71 -71 -72 -73 -76 -78 -80 -81 -82 -81 -80 -78 -77 -77 -80 -82 -82 -80 -78 -75 -71 -68 -64 -63 -64 -64 -64 -64 -66 -69 -70 -71 -72 -73 -74 -75 -77 -78 -79 -78 -77 -76 -75 -74 -73 -72 -71 -71 -69 -68 -66 -65 -65 -65 -65 -64 -64 -65 -66 -67 -69 -71 -73 -77 -81 -87 -93 -98 -104 -111 -120 -127 -129 -127 -125 -125 -126 -126 -125 -124 -124 -124 -124 -124 -124 -124 -124 -124 -123 -123 -123 -123 -123 -124 -124 -123 -123 -122 -122 -121 -120 -118 -115 -111 -108 -106 -103 -100 -95 -89 -84 -80 -77 -75 -73 -71 -69 -67 -65 -64 -64 -63 -63 -62 -60 -59 -57 -56 -55 -55 -56 -57 -57 -58 -59 -60 -61 -61 -62 -63 -63 -63 -63 -64 -64 -65 -65 -65 -65 -65 -64 -62 -61 -60 -58 -58 -57 -58 -59 -60 -61 -62 -63 -64 -63 -62 -61 -59 -58 -57 -57 -56 -55 -28 -31 -32 -31 -30 -29 -22 -10 -5 -9 -18 -27 -35 -40 -38 -32 -28 -29 -25 -20 -20 -31 -38 -35 -25 -18 -25 -35 -42 -45 -40 -31 -30 -34 -39 -41 -44 -45 -46 -46 -34 -21 -21 -29 -41 -49 -53 -55 -55 -53 -52 -50 -48 -46 -47 -46 -43 -43 -45 -42 -29 -18 -9 -5 -8 -7 -10 -18 -32 -38 -37 -37 -41 -50 -58 -59 -58 -57 -59 -61 -61 -61 -62 -63 -65 -67 -69 -71 -72 -72 -72 -72 -71 -70 -70 -71 -72 -73 -73 -73 -71 -68 -66 -66 -66 -66 -66 -66 -66 -63 -59 -54 -48 -49 -53 -58 -58 -55 -53 -53 -55 -59 -61 -62 -63 -64 -66 -68 -68 -67 -64 -58 -47 -43 -44 -49 -55 -57 -59 -61 -64 -69 -64 -57 -51 -51 -50 -45 -43 -44 -45 -46 -48 -51 -52 -50 -49 -54 -59 -63 -66 -71 -77 -81 -79 -70 -62 -59 -58 -59 -63 -70 -76 -80 -80 -77 -72 -69 -68 -71 -74 -72 -69 -68 -72 -78 -79 -79 -82 -85 -86 -81 -74 -68 -70 -73 -77 -80 -82 -84 -87 -90 -91 -92 -92 -93 -94 -95 -95 -94 -93 -93 -91 -91 -91 -91 -92 -92 -91 -88 -85 -82 -81 -81 -81 -78 -74 -70 -69 -66 -65 -67 -72 -74 -73 -70 -68 -69 -70 -70 -70 -71 -72 -76 -79 -81 -82 -82 -81 -79 -76 -75 -76 -78 -80 -80 -79 -77 -75 -73 -70 -67 -66 -65 -64 -64 -65 -66 -68 -70 -70 -72 -73 -74 -75 -76 -77 -77 -76 -75 -74 -73 -72 -70 -68 -66 -65 -65 -64 -64 -64 -64 -64 -63 -63 -63 -64 -65 -67 -70 -73 -77 -82 -87 -93 -99 -105 -111 -118 -126 -131 -131 -127 -124 -126 -127 -127 -127 -125 -125 -126 -127 -126 -126 -125 -124 -124 -125 -124 -124 -124 -124 -125 -126 -124 -123 -122 -122 -122 -121 -118 -115 -110 -107 -105 -102 -99 -94 -89 -84 -80 -78 -76 -74 -73 -71 -69 -67 -66 -65 -65 -64 -63 -62 -61 -60 -59 -58 -58 -59 -59 -60 -60 -61 -62 -63 -63 -64 -64 -65 -64 -64 -64 -65 -65 -66 -66 -66 -65 -64 -62 -61 -60 -59 -58 -59 -60 -60 -61 -61 -62 -63 -64 -63 -61 -61 -60 -58 -58 -58 -57 -56 -25 -27 -28 -28 -28 -28 -28 -20 -13 -11 -17 -25 -31 -35 -37 -35 -34 -35 -32 -27 -25 -33 -40 -42 -39 -35 -30 -30 -36 -44 -50 -48 -43 -39 -37 -34 -32 -36 -42 -43 -24 -12 -17 -30 -42 -48 -49 -49 -47 -46 -46 -45 -43 -40 -39 -38 -38 -40 -41 -33 -15 -2 1 -3 -9 -9 -13 -21 -32 -38 -41 -46 -52 -59 -61 -62 -62 -63 -65 -68 -70 -72 -73 -75 -79 -81 -81 -80 -77 -75 -74 -74 -73 -74 -75 -75 -75 -75 -76 -76 -74 -71 -68 -68 -68 -68 -69 -68 -66 -62 -58 -54 -52 -52 -54 -55 -52 -50 -51 -55 -62 -67 -66 -64 -63 -63 -66 -68 -68 -65 -59 -50 -44 -43 -46 -52 -59 -60 -59 -60 -64 -70 -65 -56 -51 -51 -51 -48 -45 -44 -45 -46 -49 -52 -52 -49 -52 -58 -63 -66 -69 -73 -78 -79 -73 -64 -59 -58 -59 -62 -67 -73 -76 -75 -72 -68 -65 -66 -70 -74 -73 -71 -69 -68 -68 -65 -64 -65 -69 -73 -74 -72 -68 -66 -69 -74 -78 -82 -82 -83 -86 -89 -90 -90 -91 -93 -94 -94 -94 -94 -93 -91 -90 -90 -91 -91 -91 -90 -88 -85 -82 -80 -79 -80 -80 -77 -74 -71 -71 -69 -68 -68 -71 -72 -69 -67 -66 -67 -68 -68 -68 -69 -71 -75 -78 -80 -82 -82 -81 -78 -76 -74 -74 -75 -77 -78 -77 -77 -76 -75 -73 -71 -69 -66 -64 -62 -64 -66 -68 -70 -71 -72 -73 -74 -75 -76 -76 -76 -75 -73 -72 -70 -68 -65 -62 -60 -61 -61 -61 -62 -63 -63 -63 -63 -63 -63 -65 -67 -69 -72 -77 -82 -87 -93 -99 -105 -112 -118 -123 -129 -130 -128 -125 -124 -127 -129 -129 -127 -126 -127 -128 -129 -128 -127 -126 -126 -126 -126 -126 -125 -125 -127 -127 -127 -125 -124 -123 -123 -123 -122 -118 -114 -109 -107 -104 -102 -99 -94 -89 -84 -81 -79 -77 -76 -75 -73 -70 -69 -68 -67 -67 -66 -65 -64 -63 -62 -62 -61 -61 -62 -62 -62 -63 -63 -64 -64 -64 -65 -66 -66 -65 -65 -66 -66 -66 -67 -67 -67 -66 -65 -63 -62 -61 -60 -60 -60 -61 -61 -61 -61 -62 -62 -62 -61 -61 -61 -60 -59 -58 -60 -59 -58 -18 -19 -22 -23 -23 -23 -24 -25 -22 -18 -18 -20 -27 -31 -33 -36 -38 -38 -37 -38 -39 -39 -40 -41 -43 -44 -39 -35 -36 -40 -48 -51 -49 -45 -42 -37 -34 -37 -43 -42 -21 -12 -19 -32 -43 -48 -48 -46 -45 -43 -42 -38 -34 -30 -28 -26 -27 -32 -35 -24 -4 4 1 -8 -12 -15 -23 -32 -41 -47 -51 -56 -59 -59 -58 -60 -63 -66 -69 -72 -76 -78 -80 -83 -87 -86 -84 -80 -77 -76 -76 -76 -76 -76 -77 -77 -76 -77 -77 -77 -76 -74 -71 -69 -68 -69 -70 -69 -67 -63 -61 -59 -56 -56 -57 -57 -56 -56 -59 -63 -66 -66 -63 -62 -63 -66 -69 -70 -68 -62 -53 -46 -43 -45 -49 -54 -58 -57 -57 -59 -65 -70 -66 -59 -52 -51 -52 -52 -50 -47 -47 -48 -50 -52 -52 -52 -55 -57 -59 -62 -67 -74 -77 -75 -67 -59 -56 -57 -60 -64 -70 -74 -73 -69 -65 -64 -66 -70 -74 -75 -72 -70 -69 -67 -61 -52 -48 -49 -55 -63 -69 -69 -67 -65 -68 -74 -78 -81 -81 -82 -86 -90 -91 -90 -92 -93 -94 -94 -94 -93 -92 -90 -89 -90 -91 -90 -89 -87 -84 -81 -79 -77 -77 -77 -78 -76 -75 -74 -74 -73 -71 -70 -71 -69 -65 -62 -62 -66 -67 -67 -66 -67 -69 -72 -75 -78 -80 -81 -81 -79 -75 -73 -72 -72 -73 -75 -75 -76 -77 -77 -77 -76 -72 -67 -64 -62 -64 -66 -69 -71 -73 -73 -73 -74 -75 -75 -76 -75 -74 -72 -70 -67 -64 -61 -59 -58 -58 -58 -59 -60 -61 -61 -62 -63 -63 -65 -67 -69 -72 -76 -81 -86 -92 -98 -105 -112 -118 -122 -126 -128 -126 -125 -124 -128 -131 -133 -131 -129 -128 -129 -130 -131 -130 -129 -128 -128 -128 -128 -128 -128 -129 -129 -129 -127 -125 -124 -124 -124 -124 -122 -118 -112 -108 -106 -104 -102 -99 -95 -90 -86 -82 -80 -79 -78 -77 -75 -72 -71 -70 -69 -69 -68 -67 -66 -65 -65 -64 -64 -64 -64 -64 -64 -65 -65 -65 -66 -66 -66 -67 -67 -67 -67 -67 -67 -67 -68 -68 -68 -67 -65 -64 -63 -62 -62 -62 -62 -61 -61 -61 -61 -61 -61 -60 -60 -60 -62 -61 -60 -60 -61 -61 -60 -12 -13 -19 -20 -18 -16 -17 -24 -27 -28 -26 -23 -28 -32 -33 -33 -35 -33 -32 -34 -40 -43 -42 -41 -41 -42 -40 -39 -40 -43 -45 -48 -49 -49 -48 -48 -43 -43 -46 -46 -30 -19 -20 -29 -38 -44 -47 -47 -45 -44 -43 -35 -25 -16 -14 -15 -19 -25 -29 -19 -1 3 -3 -14 -20 -27 -35 -43 -50 -55 -58 -60 -61 -61 -61 -63 -66 -69 -72 -75 -78 -80 -83 -85 -83 -79 -74 -72 -73 -75 -76 -77 -78 -78 -78 -77 -77 -77 -77 -77 -77 -76 -74 -71 -70 -69 -69 -70 -69 -67 -66 -65 -61 -61 -63 -65 -66 -67 -68 -68 -64 -59 -57 -59 -63 -68 -71 -71 -67 -59 -51 -47 -46 -48 -52 -56 -57 -56 -57 -60 -65 -70 -69 -62 -54 -50 -51 -51 -50 -48 -47 -50 -54 -56 -57 -57 -56 -55 -57 -63 -71 -78 -76 -69 -60 -57 -56 -57 -61 -66 -72 -71 -67 -64 -64 -67 -71 -73 -74 -73 -71 -70 -68 -63 -54 -45 -41 -41 -48 -59 -67 -68 -66 -64 -68 -73 -77 -79 -79 -81 -87 -92 -94 -91 -92 -93 -94 -93 -92 -91 -90 -89 -89 -89 -89 -88 -86 -83 -81 -78 -76 -75 -75 -75 -76 -76 -76 -77 -78 -76 -73 -71 -69 -66 -61 -59 -60 -64 -65 -65 -64 -64 -65 -67 -71 -75 -79 -81 -81 -79 -76 -72 -70 -70 -71 -73 -74 -75 -76 -78 -80 -79 -74 -69 -65 -63 -63 -65 -68 -71 -72 -71 -72 -73 -74 -74 -74 -74 -73 -72 -70 -66 -63 -61 -60 -58 -57 -57 -57 -57 -59 -60 -62 -63 -65 -67 -70 -73 -77 -81 -85 -90 -96 -103 -111 -117 -122 -124 -126 -127 -126 -126 -129 -133 -134 -134 -133 -131 -131 -132 -133 -133 -133 -133 -132 -130 -129 -129 -131 -132 -133 -133 -131 -128 -126 -126 -126 -127 -126 -123 -117 -112 -108 -106 -105 -103 -100 -96 -92 -88 -85 -83 -82 -81 -79 -77 -74 -73 -72 -72 -71 -70 -69 -68 -67 -66 -66 -66 -66 -66 -66 -66 -67 -67 -67 -67 -67 -68 -68 -68 -68 -68 -68 -68 -68 -68 -69 -68 -67 -66 -66 -65 -65 -64 -63 -62 -61 -61 -61 -61 -61 -61 -60 -60 -61 -62 -62 -62 -62 -63 -63 -62 -15 -18 -20 -18 -15 -11 -10 -14 -23 -31 -36 -35 -35 -33 -29 -24 -24 -29 -34 -38 -39 -39 -39 -38 -38 -38 -36 -38 -40 -42 -43 -45 -47 -50 -51 -53 -51 -51 -51 -50 -42 -30 -26 -28 -34 -40 -45 -46 -44 -44 -45 -39 -25 -10 -3 -6 -15 -23 -25 -15 -3 -1 -8 -21 -32 -41 -46 -51 -56 -59 -60 -62 -64 -69 -72 -73 -73 -73 -74 -76 -78 -81 -82 -80 -72 -65 -63 -65 -71 -75 -78 -79 -80 -79 -78 -77 -77 -77 -77 -77 -77 -76 -75 -74 -72 -70 -69 -70 -70 -71 -72 -70 -67 -67 -69 -72 -73 -73 -71 -67 -61 -56 -57 -61 -66 -71 -73 -72 -66 -57 -49 -48 -49 -51 -54 -57 -58 -58 -59 -61 -64 -70 -72 -65 -56 -49 -49 -50 -50 -48 -48 -54 -60 -63 -63 -63 -62 -62 -65 -70 -78 -79 -73 -64 -57 -55 -55 -56 -61 -69 -70 -66 -63 -62 -66 -69 -70 -70 -70 -72 -74 -73 -67 -58 -50 -45 -43 -43 -48 -58 -65 -67 -66 -65 -69 -73 -76 -78 -78 -81 -88 -95 -96 -91 -92 -92 -92 -91 -90 -89 -88 -87 -85 -85 -85 -85 -84 -81 -78 -76 -74 -74 -74 -74 -74 -76 -77 -79 -80 -78 -74 -70 -67 -62 -58 -56 -58 -62 -64 -64 -63 -62 -63 -65 -67 -71 -76 -80 -81 -80 -77 -72 -69 -69 -70 -72 -73 -73 -75 -78 -81 -80 -75 -70 -66 -65 -64 -66 -67 -69 -68 -68 -69 -71 -73 -73 -73 -73 -74 -74 -72 -69 -66 -65 -63 -61 -59 -58 -58 -57 -59 -61 -62 -65 -67 -71 -75 -79 -83 -86 -89 -94 -100 -109 -116 -121 -123 -125 -127 -128 -128 -129 -132 -135 -135 -134 -134 -135 -136 -136 -136 -136 -137 -136 -134 -132 -131 -132 -134 -135 -135 -134 -132 -130 -128 -127 -128 -129 -127 -123 -117 -112 -109 -107 -106 -104 -101 -98 -94 -91 -88 -86 -85 -83 -82 -79 -76 -75 -75 -75 -74 -72 -71 -70 -69 -68 -68 -67 -67 -67 -67 -68 -68 -69 -68 -69 -69 -69 -69 -69 -69 -69 -69 -69 -68 -68 -69 -68 -68 -69 -69 -69 -68 -66 -63 -62 -61 -61 -61 -61 -61 -61 -61 -61 -62 -63 -64 -64 -65 -65 -64 -62 -13 -10 -8 -10 -11 -11 -10 -14 -18 -24 -30 -34 -35 -32 -26 -21 -20 -28 -35 -39 -38 -37 -36 -33 -32 -32 -32 -33 -36 -38 -40 -43 -46 -49 -51 -53 -54 -54 -53 -51 -47 -39 -34 -32 -36 -40 -44 -43 -41 -39 -44 -44 -33 -14 2 -3 -15 -22 -20 -11 -3 -5 -14 -28 -41 -49 -55 -58 -60 -60 -63 -67 -73 -77 -79 -77 -74 -73 -75 -77 -80 -82 -79 -70 -61 -58 -60 -67 -75 -78 -80 -80 -80 -79 -76 -75 -75 -76 -76 -76 -75 -75 -75 -74 -74 -73 -71 -70 -71 -73 -74 -74 -71 -71 -71 -73 -73 -70 -66 -63 -61 -62 -65 -68 -72 -75 -75 -73 -65 -55 -49 -50 -52 -54 -57 -60 -61 -61 -61 -62 -64 -72 -74 -69 -58 -49 -49 -49 -50 -50 -53 -59 -64 -66 -66 -65 -65 -67 -69 -73 -76 -74 -69 -63 -58 -57 -56 -60 -66 -71 -70 -66 -63 -63 -66 -66 -64 -64 -69 -77 -80 -75 -66 -54 -49 -48 -49 -49 -52 -58 -64 -67 -67 -67 -69 -72 -75 -76 -77 -82 -90 -96 -95 -89 -90 -91 -90 -89 -88 -87 -85 -83 -82 -83 -85 -85 -83 -79 -77 -75 -75 -75 -75 -74 -75 -76 -77 -79 -80 -77 -73 -68 -64 -59 -56 -55 -57 -61 -63 -63 -62 -61 -62 -63 -65 -69 -74 -78 -81 -82 -80 -75 -70 -68 -69 -71 -71 -72 -74 -78 -81 -79 -75 -70 -68 -67 -67 -68 -67 -66 -66 -67 -68 -70 -72 -72 -72 -73 -74 -76 -75 -73 -71 -69 -67 -65 -62 -61 -60 -60 -61 -63 -66 -69 -72 -77 -81 -85 -87 -89 -93 -99 -106 -114 -119 -122 -125 -127 -129 -129 -130 -131 -133 -134 -134 -134 -135 -137 -138 -138 -139 -140 -140 -138 -136 -134 -134 -136 -137 -137 -136 -136 -134 -132 -130 -130 -131 -131 -127 -122 -117 -113 -111 -110 -108 -106 -103 -100 -97 -94 -92 -90 -88 -86 -84 -81 -78 -77 -77 -78 -76 -74 -72 -71 -70 -69 -70 -70 -69 -69 -69 -69 -70 -70 -70 -70 -70 -70 -70 -70 -69 -69 -69 -69 -68 -68 -68 -68 -70 -71 -72 -71 -69 -66 -63 -61 -61 -61 -61 -61 -61 -61 -61 -62 -63 -64 -65 -67 -66 -65 -64 -62 -3 -1 -5 -10 -11 -10 -13 -18 -21 -26 -31 -33 -33 -31 -27 -23 -24 -31 -35 -36 -35 -35 -31 -28 -26 -27 -27 -29 -31 -32 -34 -38 -42 -46 -48 -48 -50 -51 -50 -49 -46 -42 -38 -38 -41 -43 -43 -40 -36 -32 -37 -42 -37 -22 -4 -4 -13 -17 -13 -5 -1 -7 -18 -29 -39 -46 -52 -55 -58 -63 -70 -73 -73 -72 -69 -68 -70 -73 -77 -79 -81 -78 -71 -60 -57 -60 -66 -72 -77 -79 -79 -78 -78 -76 -75 -74 -74 -75 -75 -75 -74 -74 -75 -75 -76 -76 -76 -74 -72 -74 -76 -76 -72 -71 -70 -68 -65 -62 -61 -62 -66 -68 -71 -74 -76 -77 -76 -72 -63 -54 -49 -51 -54 -57 -60 -63 -64 -63 -61 -61 -65 -74 -76 -70 -59 -50 -49 -50 -51 -53 -59 -64 -67 -68 -66 -64 -63 -64 -67 -70 -71 -70 -69 -68 -66 -64 -65 -69 -74 -76 -73 -68 -64 -62 -62 -63 -64 -67 -74 -82 -84 -78 -66 -53 -49 -50 -53 -55 -57 -58 -62 -67 -69 -68 -69 -71 -73 -75 -77 -84 -91 -94 -91 -87 -88 -89 -88 -87 -85 -84 -83 -82 -81 -84 -85 -84 -82 -80 -77 -76 -76 -77 -76 -76 -77 -79 -79 -79 -78 -75 -69 -65 -61 -58 -56 -55 -56 -60 -61 -61 -61 -60 -60 -60 -62 -66 -72 -77 -80 -82 -83 -78 -73 -69 -68 -68 -68 -69 -72 -76 -79 -78 -75 -72 -70 -71 -70 -69 -67 -65 -65 -67 -68 -70 -72 -71 -71 -72 -75 -77 -78 -77 -76 -73 -70 -68 -65 -64 -63 -64 -66 -68 -71 -74 -78 -83 -87 -90 -91 -93 -98 -105 -113 -117 -121 -125 -128 -130 -131 -131 -131 -132 -132 -132 -133 -135 -137 -138 -139 -140 -142 -143 -142 -141 -140 -139 -139 -139 -139 -139 -138 -138 -137 -135 -134 -133 -134 -131 -126 -121 -117 -116 -114 -112 -110 -107 -105 -102 -100 -98 -96 -93 -91 -89 -86 -83 -80 -80 -80 -80 -78 -76 -74 -72 -72 -72 -72 -72 -71 -70 -70 -70 -71 -72 -71 -71 -72 -71 -70 -70 -70 -70 -70 -70 -68 -68 -68 -69 -72 -73 -73 -71 -68 -65 -63 -62 -62 -62 -62 -62 -61 -61 -61 -63 -64 -65 -66 -66 -65 -63 -62 -61 2 0 -6 -9 -8 -10 -17 -22 -24 -29 -34 -34 -35 -33 -30 -28 -30 -34 -33 -32 -31 -29 -24 -22 -22 -23 -24 -27 -29 -29 -30 -33 -37 -41 -43 -43 -44 -45 -45 -44 -42 -40 -40 -41 -43 -40 -37 -34 -31 -30 -32 -36 -37 -32 -20 -13 -10 -9 -6 -1 -4 -14 -23 -29 -34 -41 -49 -55 -61 -68 -72 -70 -66 -63 -63 -67 -72 -75 -75 -74 -75 -72 -65 -58 -60 -64 -69 -75 -78 -78 -78 -77 -76 -75 -75 -76 -76 -76 -76 -76 -76 -77 -79 -80 -81 -82 -82 -79 -75 -74 -75 -76 -74 -72 -70 -68 -67 -66 -64 -65 -66 -68 -71 -74 -76 -77 -75 -68 -59 -53 -50 -52 -55 -59 -63 -64 -63 -61 -60 -61 -67 -76 -77 -70 -59 -51 -51 -52 -54 -57 -63 -68 -70 -70 -67 -64 -61 -61 -63 -66 -69 -71 -72 -73 -73 -74 -76 -79 -82 -83 -80 -74 -68 -64 -63 -65 -69 -73 -78 -82 -84 -80 -71 -57 -48 -45 -46 -50 -54 -57 -62 -68 -71 -69 -68 -69 -71 -73 -78 -84 -89 -89 -87 -85 -86 -86 -85 -85 -84 -84 -83 -82 -82 -85 -86 -84 -83 -81 -78 -79 -81 -82 -79 -79 -79 -79 -78 -78 -76 -71 -66 -62 -59 -57 -56 -55 -55 -57 -59 -60 -60 -59 -58 -58 -60 -64 -70 -74 -79 -82 -84 -81 -77 -72 -68 -64 -63 -65 -69 -74 -78 -78 -77 -75 -73 -72 -70 -67 -66 -66 -66 -68 -69 -71 -71 -71 -71 -73 -75 -78 -80 -80 -78 -76 -73 -71 -68 -68 -68 -70 -72 -75 -77 -80 -84 -88 -92 -93 -94 -97 -103 -112 -118 -122 -125 -128 -130 -131 -131 -131 -131 -131 -131 -131 -133 -136 -139 -139 -140 -141 -143 -144 -145 -145 -144 -144 -144 -144 -143 -143 -142 -142 -141 -139 -137 -136 -134 -130 -125 -120 -118 -117 -116 -114 -111 -108 -106 -104 -103 -101 -99 -96 -94 -92 -89 -85 -83 -82 -82 -83 -81 -78 -76 -74 -74 -75 -75 -74 -73 -72 -71 -71 -72 -73 -73 -73 -72 -72 -71 -71 -70 -70 -71 -70 -69 -69 -69 -71 -73 -74 -72 -70 -67 -65 -64 -64 -64 -63 -63 -63 -62 -62 -62 -64 -65 -65 -66 -66 -64 -62 -61 -60 2 -0 -5 -5 -6 -10 -19 -23 -26 -32 -36 -36 -35 -32 -30 -31 -33 -32 -29 -28 -28 -24 -18 -18 -20 -22 -24 -28 -29 -30 -30 -34 -36 -37 -36 -36 -36 -37 -38 -38 -36 -35 -36 -37 -37 -32 -27 -23 -21 -21 -23 -29 -31 -30 -23 -12 -5 -5 -9 -13 -23 -33 -40 -43 -44 -47 -50 -54 -60 -68 -71 -70 -67 -66 -70 -74 -75 -73 -70 -70 -71 -69 -63 -60 -64 -68 -73 -76 -77 -78 -78 -78 -77 -76 -76 -77 -77 -78 -79 -81 -82 -84 -85 -85 -85 -83 -81 -78 -75 -74 -74 -74 -74 -75 -74 -72 -72 -72 -68 -67 -67 -68 -70 -73 -75 -75 -70 -58 -52 -51 -52 -53 -57 -61 -63 -63 -61 -60 -61 -64 -69 -76 -76 -68 -57 -51 -55 -58 -60 -60 -65 -69 -71 -71 -69 -66 -64 -63 -63 -66 -69 -72 -74 -76 -79 -81 -83 -86 -87 -88 -86 -81 -75 -70 -69 -72 -75 -78 -80 -82 -82 -79 -73 -60 -50 -47 -47 -50 -55 -58 -64 -70 -74 -70 -67 -66 -67 -71 -77 -82 -85 -85 -83 -83 -83 -83 -81 -83 -84 -85 -84 -83 -84 -85 -85 -85 -85 -83 -83 -85 -87 -86 -82 -80 -79 -77 -76 -76 -73 -68 -64 -60 -58 -57 -55 -53 -52 -55 -57 -59 -59 -57 -56 -57 -59 -63 -68 -72 -76 -81 -85 -85 -81 -75 -67 -62 -60 -61 -64 -71 -77 -80 -80 -78 -74 -69 -66 -65 -66 -67 -68 -69 -70 -71 -70 -70 -71 -74 -77 -79 -81 -81 -80 -79 -77 -75 -73 -72 -73 -75 -78 -80 -82 -85 -89 -92 -95 -96 -97 -102 -110 -118 -124 -126 -128 -129 -130 -130 -130 -130 -130 -129 -129 -131 -134 -138 -139 -139 -140 -142 -144 -146 -148 -149 -149 -149 -149 -149 -149 -148 -149 -149 -147 -144 -140 -136 -132 -128 -123 -119 -118 -118 -118 -116 -112 -109 -107 -105 -104 -102 -100 -98 -96 -94 -91 -87 -85 -85 -85 -85 -83 -79 -77 -76 -76 -76 -76 -76 -74 -73 -72 -72 -73 -74 -74 -73 -73 -72 -72 -72 -71 -71 -72 -71 -70 -70 -71 -74 -74 -74 -71 -69 -67 -67 -66 -66 -65 -64 -64 -63 -63 -63 -63 -65 -65 -65 -65 -65 -63 -62 -61 -59 2 -1 -2 -3 -5 -11 -18 -20 -24 -31 -35 -35 -32 -29 -28 -28 -29 -26 -24 -25 -25 -21 -16 -15 -17 -19 -23 -26 -26 -26 -28 -31 -32 -32 -33 -34 -34 -34 -35 -34 -31 -29 -30 -31 -29 -25 -21 -20 -19 -19 -19 -23 -28 -28 -22 -6 1 -1 -10 -21 -33 -40 -47 -52 -57 -60 -62 -63 -65 -72 -74 -71 -68 -68 -71 -72 -71 -68 -66 -67 -69 -68 -66 -65 -68 -71 -75 -76 -77 -78 -78 -78 -78 -78 -78 -79 -80 -82 -82 -84 -86 -87 -88 -85 -82 -79 -76 -75 -76 -75 -74 -72 -74 -77 -77 -76 -77 -76 -73 -70 -69 -70 -73 -76 -77 -75 -65 -54 -50 -52 -54 -55 -58 -62 -64 -64 -63 -63 -64 -66 -70 -76 -74 -66 -57 -54 -60 -64 -65 -65 -68 -70 -70 -71 -71 -70 -69 -68 -69 -69 -69 -70 -72 -77 -82 -85 -87 -89 -90 -90 -89 -86 -82 -78 -77 -79 -81 -81 -81 -81 -81 -78 -71 -59 -52 -51 -53 -55 -56 -59 -65 -72 -75 -71 -68 -66 -67 -70 -75 -78 -81 -82 -80 -81 -81 -80 -80 -83 -86 -86 -85 -84 -85 -85 -86 -87 -87 -87 -89 -90 -90 -87 -84 -80 -76 -74 -74 -74 -71 -67 -62 -59 -58 -57 -54 -51 -51 -54 -56 -58 -57 -56 -56 -56 -58 -61 -65 -70 -74 -79 -85 -88 -85 -78 -68 -60 -56 -56 -59 -67 -75 -79 -80 -76 -70 -65 -63 -64 -66 -68 -68 -68 -70 -71 -70 -70 -72 -75 -78 -80 -81 -82 -82 -81 -80 -78 -77 -76 -77 -78 -81 -84 -87 -90 -93 -96 -97 -97 -102 -109 -118 -125 -128 -128 -128 -127 -127 -128 -128 -128 -128 -128 -130 -133 -136 -138 -139 -139 -141 -143 -145 -148 -151 -152 -153 -153 -153 -153 -153 -154 -156 -156 -153 -147 -140 -134 -130 -126 -122 -119 -118 -118 -118 -116 -112 -109 -107 -106 -104 -103 -102 -100 -97 -95 -92 -89 -87 -87 -87 -87 -84 -81 -78 -78 -78 -78 -78 -78 -76 -75 -74 -73 -74 -74 -74 -74 -73 -73 -73 -72 -72 -73 -72 -72 -71 -72 -74 -76 -75 -73 -70 -69 -69 -68 -67 -66 -66 -65 -65 -64 -64 -64 -64 -65 -66 -65 -65 -65 -64 -62 -61 -59 -3 -3 -3 -4 -7 -11 -14 -15 -19 -24 -29 -30 -25 -23 -23 -24 -24 -20 -21 -24 -25 -21 -13 -11 -12 -13 -18 -23 -25 -26 -27 -28 -27 -27 -29 -30 -31 -33 -33 -30 -25 -24 -27 -28 -25 -21 -20 -21 -23 -24 -25 -26 -28 -27 -21 -5 1 -3 -14 -26 -36 -43 -48 -54 -62 -67 -70 -71 -72 -75 -74 -71 -68 -69 -70 -68 -67 -66 -66 -67 -68 -69 -70 -71 -73 -75 -77 -77 -77 -78 -78 -79 -79 -79 -79 -80 -82 -84 -85 -86 -86 -86 -85 -79 -75 -72 -71 -74 -77 -78 -76 -72 -74 -79 -80 -80 -80 -79 -77 -75 -74 -75 -78 -80 -79 -73 -59 -50 -50 -53 -55 -57 -61 -65 -67 -67 -67 -67 -67 -68 -72 -76 -74 -67 -59 -58 -64 -68 -70 -70 -72 -73 -73 -72 -72 -73 -73 -73 -72 -70 -64 -64 -69 -77 -83 -86 -88 -90 -90 -90 -90 -88 -85 -83 -82 -83 -83 -82 -81 -82 -80 -75 -67 -58 -54 -55 -58 -59 -57 -60 -66 -72 -74 -71 -69 -66 -66 -68 -72 -74 -77 -80 -80 -80 -80 -81 -82 -86 -88 -87 -86 -85 -86 -87 -88 -90 -91 -92 -92 -92 -90 -87 -82 -76 -72 -70 -72 -72 -70 -67 -62 -59 -58 -57 -55 -51 -52 -55 -57 -57 -56 -56 -56 -56 -57 -59 -63 -68 -73 -78 -84 -89 -88 -82 -70 -60 -53 -51 -54 -62 -71 -77 -78 -75 -69 -65 -63 -64 -66 -66 -66 -68 -70 -71 -71 -72 -74 -77 -79 -81 -82 -83 -83 -83 -83 -81 -80 -80 -80 -81 -83 -87 -91 -93 -95 -96 -97 -100 -108 -116 -124 -128 -129 -128 -126 -125 -125 -126 -126 -126 -127 -129 -132 -135 -137 -139 -140 -141 -143 -146 -148 -151 -153 -155 -155 -155 -155 -156 -157 -159 -161 -160 -154 -145 -138 -135 -131 -127 -122 -119 -118 -118 -118 -117 -112 -109 -108 -106 -104 -103 -102 -100 -98 -95 -93 -90 -88 -88 -89 -89 -86 -82 -80 -79 -79 -79 -79 -79 -77 -75 -75 -75 -76 -75 -74 -74 -73 -74 -74 -73 -74 -74 -74 -73 -73 -75 -76 -76 -75 -72 -71 -70 -70 -69 -68 -67 -66 -66 -65 -65 -64 -64 -65 -66 -66 -65 -65 -65 -64 -63 -61 -59 -15 -14 -12 -11 -12 -14 -16 -17 -18 -19 -20 -19 -16 -14 -15 -17 -16 -13 -18 -24 -27 -21 -11 -9 -13 -18 -22 -25 -27 -28 -25 -23 -22 -23 -25 -26 -28 -32 -31 -27 -22 -22 -26 -26 -22 -16 -18 -23 -29 -34 -35 -31 -28 -25 -20 -9 -6 -10 -18 -28 -39 -46 -53 -57 -61 -65 -68 -70 -71 -72 -70 -68 -68 -69 -68 -67 -66 -66 -66 -65 -66 -70 -74 -77 -78 -79 -78 -78 -77 -78 -79 -80 -79 -80 -80 -81 -82 -84 -86 -86 -84 -81 -77 -72 -69 -70 -72 -76 -79 -80 -79 -76 -76 -80 -82 -81 -79 -77 -76 -76 -77 -80 -82 -81 -75 -66 -53 -49 -51 -54 -57 -60 -65 -69 -70 -70 -69 -67 -65 -67 -72 -77 -75 -67 -60 -61 -67 -71 -74 -75 -77 -78 -78 -76 -75 -73 -74 -75 -75 -73 -68 -66 -69 -76 -81 -84 -87 -90 -90 -90 -90 -88 -86 -84 -83 -84 -83 -82 -80 -81 -78 -71 -63 -56 -56 -58 -60 -60 -58 -60 -66 -71 -72 -70 -69 -67 -66 -67 -69 -72 -76 -80 -82 -82 -83 -85 -89 -92 -92 -91 -90 -90 -89 -90 -92 -93 -93 -91 -89 -87 -86 -85 -79 -73 -69 -70 -71 -71 -70 -67 -62 -59 -57 -56 -55 -53 -56 -58 -59 -56 -54 -54 -55 -56 -57 -58 -61 -67 -73 -77 -82 -88 -90 -85 -73 -61 -53 -49 -50 -57 -67 -73 -76 -75 -70 -67 -65 -65 -65 -64 -65 -67 -70 -71 -71 -73 -75 -78 -80 -82 -84 -84 -85 -86 -85 -84 -83 -83 -83 -84 -86 -89 -92 -94 -95 -97 -99 -105 -114 -122 -127 -129 -128 -126 -124 -123 -123 -124 -124 -125 -127 -129 -133 -136 -139 -140 -141 -143 -146 -149 -151 -153 -155 -156 -157 -157 -157 -159 -161 -164 -165 -162 -152 -141 -135 -135 -133 -128 -122 -119 -117 -118 -119 -117 -112 -109 -108 -106 -104 -103 -102 -100 -97 -95 -93 -91 -89 -89 -91 -90 -87 -84 -81 -80 -79 -80 -80 -80 -78 -77 -76 -77 -78 -76 -75 -75 -74 -75 -74 -75 -75 -76 -75 -75 -76 -77 -77 -76 -74 -73 -71 -71 -71 -69 -68 -67 -67 -66 -66 -66 -65 -65 -66 -67 -67 -66 -65 -65 -65 -64 -62 -60 -28 -30 -30 -30 -29 -27 -25 -22 -20 -19 -17 -17 -15 -14 -17 -18 -15 -11 -15 -21 -23 -17 -5 -4 -12 -21 -27 -28 -28 -26 -21 -17 -17 -19 -22 -24 -29 -32 -31 -26 -21 -22 -25 -24 -17 -11 -15 -26 -36 -42 -41 -33 -25 -19 -15 -12 -12 -15 -21 -31 -42 -51 -58 -62 -63 -63 -64 -65 -66 -67 -67 -68 -70 -70 -68 -68 -69 -68 -64 -61 -64 -71 -80 -85 -84 -82 -79 -77 -78 -79 -81 -81 -81 -80 -81 -82 -83 -83 -84 -82 -79 -74 -70 -68 -70 -74 -78 -80 -81 -81 -81 -80 -79 -79 -78 -74 -70 -67 -68 -71 -76 -81 -81 -75 -65 -56 -49 -49 -52 -55 -58 -62 -68 -71 -72 -69 -66 -64 -63 -67 -76 -78 -73 -66 -60 -63 -68 -72 -75 -77 -79 -81 -81 -80 -79 -77 -76 -76 -75 -74 -72 -72 -73 -76 -80 -83 -87 -90 -91 -90 -89 -87 -85 -83 -82 -82 -81 -80 -79 -79 -73 -66 -59 -55 -56 -60 -62 -61 -58 -60 -65 -68 -68 -69 -70 -69 -67 -66 -69 -73 -78 -83 -86 -86 -88 -91 -95 -97 -96 -95 -94 -92 -90 -91 -90 -88 -86 -83 -80 -79 -79 -80 -76 -72 -70 -71 -71 -70 -69 -66 -61 -57 -55 -55 -55 -56 -60 -61 -59 -54 -52 -53 -55 -56 -56 -57 -61 -68 -73 -75 -80 -86 -88 -85 -74 -63 -54 -49 -48 -53 -62 -70 -74 -75 -72 -69 -67 -65 -63 -61 -63 -67 -70 -72 -72 -73 -76 -78 -82 -84 -86 -87 -88 -89 -88 -86 -85 -85 -87 -88 -90 -92 -95 -96 -97 -99 -103 -111 -119 -125 -127 -127 -126 -125 -123 -121 -122 -123 -124 -125 -127 -130 -134 -138 -140 -141 -143 -146 -149 -152 -154 -155 -156 -157 -157 -158 -160 -162 -165 -167 -167 -159 -147 -136 -133 -135 -133 -128 -122 -119 -118 -119 -120 -118 -113 -109 -107 -105 -103 -102 -101 -99 -97 -95 -93 -91 -89 -89 -90 -89 -87 -84 -82 -80 -79 -80 -81 -80 -78 -77 -78 -78 -79 -77 -76 -75 -75 -75 -75 -76 -76 -77 -77 -77 -79 -79 -78 -76 -74 -73 -72 -72 -71 -70 -69 -68 -68 -67 -67 -67 -66 -66 -67 -68 -68 -66 -65 -65 -64 -64 -62 -61 -27 -30 -34 -38 -41 -42 -40 -35 -31 -27 -23 -18 -13 -16 -21 -23 -18 -12 -15 -20 -21 -14 -1 -0 -7 -17 -22 -24 -25 -22 -16 -11 -11 -15 -20 -25 -31 -33 -31 -26 -22 -25 -26 -22 -14 -9 -16 -29 -41 -46 -42 -30 -20 -12 -8 -10 -12 -16 -22 -33 -43 -51 -59 -64 -67 -70 -71 -73 -73 -72 -72 -75 -78 -78 -75 -77 -78 -74 -65 -64 -69 -77 -85 -91 -90 -87 -84 -82 -81 -82 -83 -83 -83 -82 -82 -82 -81 -80 -79 -76 -71 -67 -66 -70 -75 -80 -82 -82 -81 -80 -79 -78 -75 -70 -65 -59 -54 -53 -58 -66 -74 -78 -72 -62 -53 -48 -48 -51 -53 -57 -61 -66 -70 -72 -71 -67 -62 -61 -64 -71 -80 -79 -71 -63 -60 -64 -69 -72 -74 -76 -78 -80 -82 -82 -80 -79 -78 -77 -76 -75 -75 -76 -77 -81 -84 -87 -90 -91 -92 -91 -90 -88 -85 -82 -80 -80 -81 -80 -78 -72 -64 -57 -54 -53 -56 -60 -63 -62 -60 -60 -61 -63 -64 -68 -70 -71 -68 -68 -71 -76 -81 -86 -88 -88 -90 -93 -97 -98 -96 -96 -95 -93 -89 -87 -83 -79 -76 -73 -71 -72 -75 -77 -74 -72 -71 -71 -69 -67 -65 -62 -58 -55 -53 -53 -55 -58 -61 -61 -57 -52 -52 -53 -55 -56 -56 -57 -62 -69 -74 -75 -78 -81 -82 -79 -70 -63 -56 -50 -47 -50 -58 -66 -71 -74 -74 -72 -69 -66 -62 -60 -61 -65 -70 -72 -72 -73 -75 -78 -82 -85 -87 -89 -91 -92 -91 -88 -87 -87 -90 -91 -93 -95 -97 -98 -99 -103 -109 -116 -122 -125 -126 -126 -126 -124 -122 -121 -122 -123 -124 -126 -128 -132 -135 -138 -140 -141 -144 -148 -152 -154 -154 -155 -156 -158 -159 -161 -163 -165 -167 -167 -163 -152 -141 -133 -133 -134 -132 -128 -122 -119 -119 -120 -120 -118 -113 -109 -106 -104 -102 -102 -101 -99 -96 -95 -93 -91 -90 -89 -90 -88 -86 -84 -81 -80 -80 -80 -81 -79 -78 -78 -78 -78 -79 -78 -77 -76 -76 -76 -76 -76 -78 -79 -79 -80 -81 -81 -79 -76 -74 -73 -73 -72 -71 -70 -69 -68 -69 -69 -69 -68 -66 -67 -68 -69 -68 -66 -65 -64 -64 -63 -62 -61 -17 -22 -28 -34 -41 -46 -47 -45 -42 -40 -35 -28 -17 -17 -23 -28 -24 -17 -18 -21 -21 -13 -1 1 -3 -8 -10 -17 -21 -21 -17 -9 -8 -12 -19 -26 -34 -35 -32 -28 -25 -31 -31 -25 -17 -16 -20 -29 -39 -46 -44 -32 -19 -10 -7 -12 -15 -20 -26 -34 -42 -52 -62 -69 -75 -79 -83 -84 -84 -81 -82 -84 -87 -87 -86 -89 -87 -83 -77 -77 -79 -82 -86 -88 -90 -90 -89 -87 -85 -84 -84 -84 -84 -84 -84 -82 -79 -75 -73 -68 -65 -66 -71 -76 -79 -81 -80 -80 -78 -75 -72 -69 -62 -55 -50 -46 -44 -50 -61 -71 -76 -73 -61 -52 -47 -49 -51 -52 -54 -58 -64 -70 -73 -72 -68 -63 -61 -64 -70 -77 -83 -77 -68 -61 -60 -65 -69 -71 -72 -74 -77 -79 -79 -78 -76 -76 -76 -76 -75 -75 -76 -77 -80 -84 -89 -92 -94 -94 -94 -93 -91 -89 -85 -80 -75 -73 -74 -77 -78 -72 -64 -56 -53 -52 -55 -59 -61 -61 -60 -59 -59 -60 -62 -67 -71 -72 -72 -73 -76 -79 -83 -87 -88 -88 -88 -91 -95 -95 -94 -93 -93 -91 -87 -82 -78 -75 -73 -71 -71 -73 -76 -78 -76 -74 -72 -70 -65 -61 -57 -55 -54 -53 -52 -53 -56 -58 -60 -59 -56 -53 -53 -55 -57 -58 -58 -59 -65 -71 -75 -74 -76 -75 -71 -65 -61 -58 -55 -51 -47 -48 -54 -61 -68 -73 -74 -74 -72 -68 -63 -60 -61 -64 -68 -71 -72 -73 -75 -79 -82 -85 -88 -91 -95 -95 -93 -90 -88 -90 -92 -94 -96 -98 -99 -100 -102 -107 -113 -118 -122 -125 -126 -125 -124 -123 -122 -121 -122 -123 -124 -126 -130 -133 -136 -138 -140 -142 -146 -150 -153 -154 -154 -155 -157 -159 -162 -164 -165 -165 -165 -163 -155 -144 -135 -132 -133 -133 -132 -127 -122 -121 -121 -120 -119 -116 -113 -109 -106 -103 -102 -102 -100 -98 -96 -95 -93 -91 -90 -90 -90 -87 -84 -82 -80 -79 -80 -81 -80 -78 -78 -78 -78 -78 -79 -79 -78 -77 -77 -77 -77 -77 -78 -80 -81 -82 -82 -82 -79 -76 -74 -73 -73 -72 -71 -70 -70 -70 -71 -71 -70 -68 -67 -67 -69 -70 -68 -65 -64 -64 -64 -63 -62 -61 -10 -16 -22 -28 -36 -41 -43 -44 -42 -44 -43 -38 -27 -21 -24 -28 -29 -24 -22 -23 -21 -15 -4 -0 -1 -3 -4 -12 -19 -23 -22 -15 -9 -11 -18 -28 -37 -38 -36 -36 -37 -40 -32 -25 -20 -22 -28 -33 -40 -48 -52 -40 -25 -12 -7 -12 -21 -29 -36 -40 -44 -51 -58 -64 -69 -76 -82 -87 -88 -86 -85 -87 -90 -90 -89 -91 -92 -91 -88 -84 -82 -82 -82 -83 -86 -88 -89 -89 -89 -89 -89 -88 -87 -88 -87 -84 -78 -73 -69 -67 -68 -72 -77 -79 -79 -78 -76 -74 -70 -67 -64 -60 -54 -50 -48 -48 -50 -60 -71 -78 -77 -68 -55 -50 -50 -53 -53 -54 -56 -59 -66 -71 -71 -67 -62 -61 -64 -69 -74 -80 -82 -73 -64 -59 -61 -65 -68 -71 -73 -75 -79 -78 -75 -71 -70 -72 -73 -73 -73 -73 -75 -78 -81 -86 -91 -93 -94 -94 -93 -91 -89 -85 -79 -72 -69 -69 -71 -73 -72 -68 -62 -57 -54 -54 -56 -58 -59 -60 -59 -58 -59 -61 -65 -70 -73 -75 -76 -78 -79 -80 -82 -85 -86 -86 -86 -88 -91 -91 -90 -89 -89 -90 -86 -81 -77 -76 -75 -74 -75 -77 -79 -79 -77 -74 -72 -66 -59 -55 -53 -52 -51 -51 -51 -53 -56 -58 -59 -59 -57 -54 -55 -58 -60 -62 -62 -64 -69 -73 -74 -74 -76 -72 -65 -56 -55 -56 -56 -53 -48 -48 -52 -58 -64 -70 -73 -75 -74 -71 -66 -63 -62 -64 -67 -69 -71 -73 -76 -79 -82 -86 -90 -94 -97 -98 -96 -93 -91 -93 -95 -96 -98 -100 -101 -102 -104 -109 -113 -117 -120 -123 -125 -124 -122 -121 -121 -121 -121 -123 -125 -128 -131 -133 -135 -138 -141 -145 -149 -152 -153 -153 -153 -155 -159 -162 -165 -164 -163 -161 -160 -156 -146 -138 -133 -133 -133 -133 -131 -127 -122 -122 -121 -120 -117 -115 -113 -110 -107 -104 -102 -101 -100 -98 -96 -94 -92 -91 -90 -92 -90 -86 -82 -81 -79 -79 -79 -80 -79 -78 -77 -77 -78 -78 -79 -79 -79 -78 -77 -77 -78 -78 -79 -81 -81 -82 -83 -83 -79 -77 -75 -74 -73 -72 -71 -71 -71 -72 -73 -72 -70 -67 -67 -68 -69 -69 -67 -65 -63 -63 -63 -63 -61 -61 -8 -15 -22 -28 -34 -37 -37 -36 -35 -37 -41 -42 -38 -31 -28 -29 -32 -32 -29 -27 -24 -18 -9 -5 -4 -4 -3 -8 -14 -20 -23 -18 -14 -16 -23 -32 -38 -41 -42 -43 -43 -38 -29 -22 -20 -23 -31 -38 -45 -50 -51 -46 -36 -24 -15 -19 -27 -37 -44 -49 -50 -52 -56 -63 -70 -74 -77 -81 -85 -86 -85 -88 -92 -94 -93 -94 -96 -96 -94 -90 -86 -83 -81 -82 -84 -86 -88 -90 -90 -91 -91 -90 -90 -90 -89 -85 -79 -72 -69 -70 -73 -76 -79 -79 -76 -74 -71 -67 -63 -61 -60 -59 -57 -56 -54 -55 -58 -70 -78 -80 -74 -62 -54 -52 -54 -56 -54 -55 -56 -60 -67 -69 -66 -63 -61 -63 -67 -73 -79 -84 -81 -69 -60 -57 -60 -64 -69 -72 -75 -78 -80 -75 -70 -67 -70 -73 -73 -72 -72 -72 -74 -78 -82 -85 -88 -89 -89 -87 -86 -84 -80 -75 -68 -63 -65 -69 -70 -67 -63 -62 -61 -59 -56 -54 -56 -58 -60 -60 -58 -59 -61 -64 -69 -72 -75 -77 -79 -81 -81 -81 -80 -80 -84 -85 -85 -85 -86 -87 -85 -85 -87 -89 -87 -83 -80 -80 -80 -79 -79 -81 -82 -80 -77 -74 -69 -60 -54 -52 -52 -51 -52 -52 -52 -54 -59 -61 -61 -61 -59 -57 -59 -62 -65 -65 -66 -68 -70 -72 -73 -74 -76 -71 -61 -51 -51 -54 -56 -54 -48 -47 -50 -55 -62 -68 -73 -75 -74 -72 -70 -67 -65 -64 -65 -66 -69 -73 -76 -80 -83 -87 -91 -95 -98 -101 -101 -98 -95 -96 -98 -99 -100 -101 -101 -102 -105 -109 -111 -115 -120 -122 -122 -121 -120 -120 -119 -119 -121 -123 -126 -128 -130 -132 -135 -139 -144 -148 -151 -152 -152 -151 -152 -156 -161 -165 -165 -162 -158 -156 -155 -152 -144 -138 -135 -134 -133 -133 -131 -127 -123 -122 -121 -119 -117 -115 -113 -111 -107 -104 -102 -101 -100 -98 -96 -94 -92 -91 -92 -93 -90 -86 -82 -80 -79 -79 -79 -80 -79 -78 -77 -78 -78 -78 -79 -79 -80 -79 -79 -79 -79 -80 -81 -82 -82 -82 -83 -83 -80 -78 -76 -75 -74 -73 -72 -72 -73 -74 -73 -72 -69 -67 -67 -68 -68 -68 -66 -64 -63 -62 -63 -62 -61 -60 -11 -18 -26 -32 -36 -38 -36 -31 -29 -31 -33 -35 -37 -39 -37 -36 -37 -37 -36 -34 -32 -29 -23 -19 -15 -11 -8 -10 -14 -16 -16 -12 -16 -22 -30 -37 -43 -48 -51 -53 -53 -49 -38 -29 -23 -24 -29 -37 -46 -53 -51 -43 -33 -25 -20 -26 -35 -43 -48 -53 -56 -56 -57 -59 -63 -68 -72 -77 -82 -85 -86 -89 -94 -97 -97 -98 -98 -96 -96 -96 -92 -88 -84 -84 -85 -87 -88 -89 -90 -90 -89 -88 -88 -88 -87 -83 -76 -69 -67 -71 -75 -78 -79 -76 -72 -68 -65 -60 -59 -60 -63 -65 -65 -64 -61 -61 -65 -76 -81 -79 -71 -58 -52 -52 -54 -56 -56 -56 -58 -63 -69 -67 -65 -64 -65 -69 -73 -79 -84 -87 -79 -65 -57 -56 -60 -66 -70 -74 -77 -80 -77 -70 -67 -69 -73 -74 -74 -74 -72 -71 -75 -80 -84 -85 -85 -83 -80 -75 -73 -71 -68 -63 -59 -60 -67 -71 -67 -60 -56 -58 -60 -60 -56 -54 -56 -59 -61 -60 -59 -60 -65 -70 -73 -74 -76 -78 -79 -81 -81 -80 -79 -78 -80 -82 -84 -84 -84 -85 -84 -85 -87 -88 -87 -84 -82 -83 -83 -82 -82 -83 -82 -78 -75 -71 -64 -55 -50 -50 -51 -51 -53 -54 -55 -57 -61 -63 -63 -62 -60 -60 -62 -63 -64 -65 -67 -67 -68 -69 -72 -76 -77 -71 -59 -48 -49 -54 -57 -55 -48 -46 -49 -54 -59 -66 -71 -73 -74 -75 -74 -70 -66 -64 -63 -65 -69 -73 -77 -82 -84 -87 -90 -95 -101 -105 -106 -102 -99 -100 -100 -100 -98 -97 -96 -98 -103 -107 -111 -116 -119 -121 -120 -119 -118 -117 -117 -118 -121 -124 -126 -127 -129 -132 -135 -140 -145 -148 -149 -150 -149 -150 -153 -158 -163 -165 -162 -157 -152 -151 -153 -150 -144 -139 -136 -133 -132 -132 -131 -127 -124 -122 -121 -119 -117 -115 -114 -111 -108 -104 -103 -102 -100 -98 -95 -93 -92 -93 -94 -93 -90 -86 -82 -80 -79 -79 -79 -79 -79 -79 -79 -79 -79 -80 -79 -80 -80 -80 -81 -81 -81 -81 -82 -83 -82 -81 -83 -83 -81 -78 -77 -76 -75 -73 -73 -73 -74 -74 -72 -70 -68 -67 -67 -67 -67 -66 -64 -63 -62 -62 -62 -62 -61 -60 -15 -21 -28 -32 -37 -39 -35 -28 -26 -27 -27 -27 -28 -33 -38 -41 -43 -42 -43 -44 -44 -43 -39 -37 -29 -20 -13 -15 -17 -17 -15 -10 -15 -23 -31 -37 -42 -48 -53 -57 -59 -58 -53 -45 -35 -27 -27 -36 -47 -54 -52 -42 -31 -23 -23 -34 -44 -50 -53 -56 -59 -60 -60 -60 -61 -65 -72 -78 -82 -85 -88 -91 -94 -97 -97 -98 -97 -95 -94 -96 -95 -93 -90 -89 -90 -90 -89 -88 -88 -87 -86 -85 -84 -83 -80 -75 -69 -65 -67 -71 -76 -77 -74 -70 -66 -62 -60 -58 -60 -65 -69 -71 -70 -67 -64 -63 -68 -77 -79 -75 -64 -53 -51 -52 -54 -56 -56 -57 -59 -64 -69 -68 -68 -69 -72 -77 -79 -84 -88 -88 -75 -60 -55 -56 -61 -67 -72 -76 -78 -77 -71 -68 -68 -70 -74 -76 -75 -73 -71 -73 -79 -84 -87 -87 -84 -77 -69 -62 -59 -59 -59 -59 -61 -66 -71 -70 -62 -53 -53 -57 -59 -59 -55 -54 -57 -60 -63 -63 -62 -65 -69 -73 -74 -75 -75 -75 -77 -79 -79 -78 -77 -76 -76 -77 -79 -81 -82 -83 -83 -84 -85 -86 -86 -85 -83 -83 -84 -83 -82 -80 -77 -71 -67 -64 -59 -52 -49 -48 -49 -51 -54 -55 -57 -60 -64 -65 -64 -62 -60 -61 -62 -63 -63 -64 -64 -62 -64 -68 -74 -78 -78 -71 -56 -45 -47 -53 -58 -55 -49 -48 -49 -52 -56 -63 -68 -72 -75 -77 -75 -71 -68 -66 -65 -66 -69 -74 -80 -84 -85 -87 -90 -96 -105 -110 -109 -105 -102 -102 -100 -97 -94 -92 -92 -96 -101 -107 -111 -115 -118 -119 -119 -117 -116 -114 -114 -117 -121 -124 -126 -126 -128 -132 -136 -141 -145 -146 -147 -148 -149 -150 -155 -160 -163 -162 -156 -151 -148 -148 -152 -151 -146 -140 -137 -134 -132 -131 -130 -127 -124 -122 -120 -119 -117 -116 -114 -112 -109 -105 -104 -102 -101 -98 -95 -94 -94 -95 -93 -91 -89 -87 -84 -81 -80 -79 -79 -80 -80 -80 -80 -80 -80 -81 -80 -80 -81 -82 -82 -82 -82 -82 -83 -83 -82 -81 -84 -84 -81 -79 -78 -77 -76 -74 -74 -74 -74 -73 -72 -70 -68 -68 -67 -67 -67 -66 -64 -62 -62 -62 -62 -61 -60 -60 -17 -21 -25 -31 -36 -36 -32 -26 -24 -24 -23 -23 -24 -28 -31 -34 -36 -39 -45 -49 -52 -54 -54 -53 -47 -36 -24 -19 -19 -18 -15 -12 -16 -24 -31 -36 -39 -44 -50 -57 -62 -62 -61 -58 -50 -37 -30 -36 -46 -54 -54 -45 -32 -25 -27 -40 -51 -58 -61 -63 -62 -64 -67 -68 -68 -71 -77 -81 -83 -84 -87 -91 -92 -91 -91 -93 -93 -91 -89 -91 -92 -92 -93 -94 -93 -91 -88 -85 -84 -84 -84 -84 -81 -76 -70 -64 -62 -63 -68 -72 -74 -72 -66 -63 -60 -59 -59 -61 -66 -70 -73 -71 -67 -62 -60 -61 -67 -75 -74 -67 -56 -51 -52 -54 -55 -56 -55 -57 -60 -64 -70 -71 -73 -75 -79 -82 -84 -87 -89 -85 -69 -57 -53 -57 -63 -69 -73 -76 -76 -73 -69 -69 -71 -74 -76 -76 -74 -73 -74 -80 -85 -87 -88 -87 -81 -72 -62 -56 -55 -56 -60 -64 -68 -70 -71 -66 -59 -52 -53 -57 -59 -57 -52 -54 -58 -62 -65 -67 -68 -69 -71 -73 -73 -72 -72 -72 -73 -75 -74 -73 -73 -72 -72 -72 -74 -76 -78 -79 -80 -81 -81 -80 -81 -81 -81 -81 -81 -81 -78 -74 -67 -61 -58 -57 -56 -52 -49 -47 -47 -50 -53 -55 -58 -62 -65 -66 -65 -63 -62 -62 -62 -62 -62 -63 -63 -63 -65 -71 -76 -81 -80 -69 -51 -41 -46 -53 -58 -56 -52 -50 -49 -50 -53 -59 -65 -70 -74 -76 -75 -73 -72 -71 -68 -69 -72 -76 -82 -86 -87 -88 -92 -101 -110 -113 -111 -106 -104 -102 -98 -94 -92 -91 -94 -98 -103 -108 -112 -115 -116 -116 -116 -114 -111 -110 -111 -117 -122 -125 -125 -125 -128 -132 -137 -141 -144 -145 -147 -148 -149 -153 -157 -159 -159 -155 -150 -146 -145 -148 -153 -152 -147 -141 -137 -134 -132 -131 -129 -126 -123 -121 -120 -119 -118 -116 -115 -113 -110 -107 -105 -103 -101 -98 -96 -96 -97 -96 -92 -91 -90 -88 -86 -83 -82 -81 -80 -80 -81 -81 -81 -81 -81 -81 -81 -81 -82 -82 -83 -83 -83 -83 -83 -83 -82 -82 -84 -84 -82 -80 -80 -79 -77 -76 -75 -74 -74 -73 -72 -70 -69 -68 -68 -67 -67 -65 -63 -62 -62 -62 -63 -61 -60 -59 -20 -22 -26 -30 -32 -32 -31 -29 -26 -23 -20 -19 -21 -24 -26 -27 -29 -32 -37 -41 -45 -49 -53 -56 -55 -48 -38 -27 -22 -18 -16 -15 -19 -25 -31 -34 -37 -40 -46 -53 -59 -61 -60 -60 -58 -51 -39 -40 -46 -53 -54 -46 -34 -28 -31 -44 -56 -64 -70 -73 -72 -73 -75 -78 -79 -80 -83 -85 -83 -82 -85 -87 -86 -83 -84 -86 -86 -83 -83 -85 -87 -88 -88 -90 -89 -87 -84 -83 -83 -85 -85 -83 -77 -67 -57 -53 -57 -65 -69 -71 -69 -65 -59 -58 -58 -60 -62 -67 -71 -72 -69 -63 -56 -52 -53 -57 -66 -73 -69 -60 -50 -51 -55 -57 -57 -56 -55 -57 -60 -65 -71 -75 -78 -81 -82 -83 -85 -88 -87 -79 -62 -54 -53 -58 -65 -70 -73 -74 -73 -70 -69 -71 -74 -77 -77 -76 -75 -76 -80 -85 -88 -89 -89 -87 -79 -68 -58 -54 -56 -60 -64 -67 -68 -68 -65 -61 -58 -55 -54 -55 -55 -52 -50 -54 -60 -65 -68 -71 -71 -70 -69 -69 -68 -68 -68 -69 -69 -70 -70 -70 -69 -69 -70 -71 -71 -72 -73 -73 -73 -72 -73 -74 -74 -75 -75 -75 -74 -73 -69 -62 -57 -55 -54 -54 -53 -51 -48 -46 -47 -50 -52 -55 -59 -62 -64 -65 -65 -65 -65 -64 -62 -61 -62 -65 -66 -67 -71 -75 -79 -84 -80 -66 -45 -39 -44 -52 -57 -56 -54 -51 -49 -48 -50 -56 -62 -68 -72 -75 -75 -75 -75 -74 -72 -72 -75 -81 -87 -90 -90 -91 -97 -106 -112 -112 -108 -106 -104 -99 -95 -93 -94 -95 -99 -102 -106 -111 -114 -115 -115 -113 -111 -109 -107 -107 -111 -118 -123 -125 -125 -125 -128 -133 -137 -141 -144 -145 -147 -149 -151 -155 -157 -157 -153 -149 -146 -144 -144 -148 -153 -151 -146 -140 -137 -136 -133 -130 -127 -124 -122 -121 -120 -119 -118 -117 -116 -115 -112 -109 -107 -105 -102 -98 -97 -98 -99 -96 -93 -92 -90 -88 -85 -85 -84 -83 -82 -82 -81 -82 -81 -81 -82 -82 -82 -82 -83 -82 -82 -83 -83 -83 -84 -83 -82 -83 -84 -84 -83 -82 -81 -80 -79 -78 -76 -75 -74 -73 -72 -71 -70 -69 -69 -68 -67 -65 -63 -62 -62 -63 -62 -60 -59 -59 -23 -24 -28 -33 -32 -30 -30 -30 -30 -26 -22 -20 -22 -24 -26 -26 -27 -30 -33 -35 -37 -40 -45 -48 -51 -53 -51 -40 -30 -22 -18 -18 -25 -30 -31 -31 -32 -37 -42 -47 -52 -57 -55 -54 -57 -62 -54 -49 -48 -50 -49 -42 -33 -30 -37 -52 -62 -69 -75 -80 -83 -84 -85 -86 -87 -87 -88 -87 -83 -79 -82 -83 -80 -76 -76 -77 -77 -77 -78 -81 -83 -85 -88 -90 -89 -86 -83 -82 -83 -84 -85 -81 -71 -55 -46 -48 -57 -65 -67 -67 -64 -60 -57 -58 -60 -63 -67 -73 -74 -69 -60 -51 -48 -48 -52 -60 -68 -71 -66 -56 -47 -49 -56 -59 -59 -58 -57 -58 -61 -66 -75 -79 -81 -82 -82 -82 -85 -88 -85 -71 -56 -53 -54 -60 -66 -70 -72 -73 -73 -72 -73 -75 -77 -78 -79 -78 -78 -81 -85 -89 -91 -91 -89 -85 -75 -64 -56 -54 -58 -63 -66 -66 -64 -62 -61 -59 -57 -56 -54 -53 -53 -51 -49 -54 -61 -67 -69 -69 -66 -64 -62 -62 -63 -64 -65 -66 -67 -68 -68 -68 -68 -69 -70 -70 -69 -67 -65 -63 -62 -64 -67 -70 -70 -69 -68 -67 -67 -65 -62 -56 -54 -53 -52 -51 -47 -43 -40 -40 -45 -50 -53 -57 -60 -60 -61 -63 -65 -66 -69 -67 -64 -63 -64 -67 -70 -73 -77 -81 -85 -88 -81 -64 -42 -38 -45 -52 -54 -52 -50 -49 -48 -47 -49 -53 -59 -65 -70 -73 -74 -76 -77 -77 -76 -77 -80 -85 -91 -93 -95 -98 -104 -110 -109 -105 -101 -103 -101 -97 -94 -95 -98 -101 -104 -107 -111 -115 -116 -115 -113 -109 -107 -105 -105 -107 -114 -121 -125 -127 -126 -126 -129 -133 -138 -141 -144 -146 -148 -150 -154 -156 -156 -153 -149 -146 -144 -143 -144 -147 -150 -148 -143 -138 -138 -136 -133 -128 -124 -121 -121 -120 -119 -119 -118 -118 -118 -118 -116 -114 -110 -107 -103 -100 -100 -101 -101 -96 -93 -92 -91 -89 -86 -86 -85 -85 -84 -82 -82 -82 -82 -82 -82 -83 -83 -83 -83 -83 -82 -83 -84 -84 -84 -83 -83 -84 -83 -82 -82 -83 -82 -82 -81 -79 -77 -76 -75 -73 -72 -71 -71 -70 -70 -69 -67 -65 -63 -62 -62 -62 -60 -59 -59 -60 -28 -27 -30 -34 -34 -30 -28 -28 -30 -29 -26 -24 -25 -29 -30 -31 -32 -34 -38 -39 -40 -41 -42 -43 -46 -52 -58 -54 -44 -34 -25 -23 -32 -38 -36 -30 -28 -34 -37 -40 -45 -53 -53 -52 -53 -60 -62 -57 -53 -53 -55 -48 -36 -32 -40 -57 -66 -71 -77 -82 -84 -84 -84 -85 -88 -89 -88 -86 -83 -78 -77 -75 -74 -74 -77 -78 -77 -77 -79 -82 -83 -82 -79 -75 -74 -76 -79 -81 -81 -81 -80 -76 -66 -50 -44 -48 -57 -63 -66 -66 -64 -62 -61 -63 -66 -70 -75 -76 -71 -61 -51 -47 -48 -52 -57 -65 -71 -72 -66 -56 -46 -47 -54 -58 -59 -58 -58 -61 -65 -70 -77 -81 -83 -82 -80 -80 -84 -86 -82 -67 -56 -54 -56 -60 -67 -72 -73 -74 -75 -77 -79 -80 -81 -81 -81 -82 -83 -85 -88 -91 -91 -90 -86 -80 -69 -61 -56 -55 -60 -64 -63 -60 -57 -59 -59 -57 -56 -56 -54 -53 -51 -50 -50 -56 -62 -66 -66 -62 -60 -60 -61 -62 -63 -63 -63 -64 -66 -68 -69 -70 -70 -70 -69 -67 -64 -61 -56 -53 -54 -60 -66 -67 -66 -64 -64 -63 -63 -62 -60 -55 -49 -45 -43 -40 -33 -35 -37 -40 -42 -50 -57 -62 -63 -60 -59 -60 -64 -68 -72 -70 -69 -68 -69 -71 -75 -79 -83 -86 -90 -89 -78 -58 -38 -39 -46 -52 -52 -48 -48 -48 -48 -47 -49 -53 -58 -63 -69 -72 -74 -77 -79 -80 -79 -80 -82 -87 -91 -95 -99 -104 -110 -108 -102 -97 -97 -100 -99 -96 -95 -98 -103 -106 -108 -111 -115 -117 -117 -114 -110 -107 -104 -103 -104 -108 -116 -123 -127 -129 -126 -126 -129 -134 -138 -141 -143 -146 -148 -152 -155 -155 -153 -150 -147 -145 -144 -143 -143 -143 -144 -141 -138 -136 -136 -134 -130 -126 -121 -119 -119 -118 -118 -118 -118 -120 -122 -123 -120 -117 -113 -109 -104 -102 -102 -103 -101 -96 -93 -93 -92 -90 -87 -86 -86 -85 -85 -84 -84 -83 -83 -83 -83 -83 -84 -84 -84 -83 -83 -83 -84 -83 -83 -84 -84 -85 -83 -81 -82 -84 -84 -83 -82 -80 -79 -77 -75 -74 -73 -72 -71 -71 -71 -70 -67 -65 -63 -63 -63 -61 -60 -59 -60 -61 -32 -33 -34 -37 -36 -31 -28 -28 -31 -32 -31 -29 -30 -34 -35 -36 -38 -41 -45 -49 -52 -54 -53 -51 -50 -53 -59 -62 -61 -54 -42 -30 -35 -48 -48 -38 -30 -34 -35 -36 -39 -46 -51 -53 -53 -56 -60 -59 -57 -57 -60 -51 -37 -33 -42 -57 -62 -65 -70 -75 -79 -80 -83 -86 -89 -85 -82 -81 -80 -77 -75 -73 -74 -76 -79 -80 -80 -80 -81 -81 -77 -71 -65 -63 -69 -74 -78 -79 -77 -75 -75 -73 -65 -51 -46 -49 -56 -63 -67 -68 -68 -67 -68 -71 -75 -78 -79 -73 -63 -55 -51 -51 -54 -58 -64 -70 -74 -74 -68 -57 -46 -46 -53 -58 -60 -60 -58 -61 -68 -75 -78 -80 -81 -81 -79 -79 -82 -83 -78 -68 -57 -55 -56 -61 -67 -73 -76 -78 -79 -81 -84 -84 -84 -83 -84 -85 -85 -87 -88 -89 -88 -86 -82 -73 -64 -59 -57 -57 -60 -60 -56 -53 -54 -58 -58 -56 -55 -57 -55 -53 -51 -50 -52 -58 -63 -65 -62 -58 -58 -60 -62 -63 -63 -63 -62 -62 -63 -65 -66 -67 -68 -67 -64 -60 -57 -55 -50 -50 -54 -62 -67 -65 -63 -62 -62 -63 -64 -63 -60 -54 -37 -30 -28 -30 -30 -38 -45 -46 -42 -50 -59 -64 -64 -62 -61 -62 -65 -71 -75 -74 -74 -74 -74 -75 -78 -82 -86 -89 -91 -84 -68 -49 -37 -40 -46 -50 -50 -47 -47 -47 -48 -47 -49 -52 -57 -62 -69 -73 -76 -79 -83 -83 -82 -82 -84 -88 -90 -94 -100 -106 -110 -104 -97 -94 -95 -97 -97 -97 -98 -100 -103 -106 -109 -114 -118 -118 -117 -113 -108 -104 -101 -100 -103 -109 -117 -124 -128 -128 -126 -126 -130 -134 -138 -141 -143 -145 -147 -151 -152 -151 -149 -147 -146 -145 -144 -142 -140 -138 -137 -136 -135 -134 -134 -131 -128 -123 -119 -117 -116 -117 -117 -117 -119 -122 -125 -126 -122 -118 -113 -109 -105 -104 -105 -104 -101 -96 -94 -93 -93 -91 -88 -87 -87 -86 -87 -86 -85 -84 -83 -83 -83 -84 -84 -84 -84 -84 -83 -84 -84 -83 -83 -84 -86 -85 -83 -82 -83 -85 -85 -84 -83 -81 -80 -78 -77 -75 -74 -73 -72 -72 -72 -70 -67 -65 -64 -64 -64 -63 -62 -62 -63 -63 -34 -37 -39 -40 -40 -36 -32 -31 -33 -36 -35 -34 -34 -35 -36 -38 -41 -44 -47 -49 -53 -56 -58 -57 -56 -56 -56 -53 -59 -62 -57 -42 -34 -48 -55 -52 -43 -42 -39 -34 -32 -37 -46 -52 -54 -54 -55 -54 -54 -54 -53 -41 -31 -30 -40 -52 -58 -63 -67 -72 -77 -81 -84 -85 -86 -81 -78 -76 -75 -73 -74 -77 -79 -81 -84 -84 -82 -81 -80 -78 -72 -65 -61 -64 -72 -77 -79 -78 -76 -74 -74 -73 -67 -55 -49 -50 -56 -65 -70 -71 -72 -73 -75 -78 -80 -79 -75 -66 -59 -57 -57 -59 -61 -66 -71 -75 -76 -74 -67 -57 -47 -45 -51 -56 -60 -61 -59 -62 -68 -74 -76 -78 -78 -76 -72 -72 -78 -80 -76 -68 -58 -54 -56 -61 -69 -77 -80 -82 -83 -84 -85 -86 -85 -85 -85 -85 -84 -83 -84 -85 -84 -81 -76 -68 -62 -59 -58 -57 -58 -54 -50 -49 -54 -58 -57 -55 -55 -56 -56 -55 -53 -51 -54 -59 -63 -64 -60 -57 -58 -60 -61 -61 -61 -62 -62 -62 -62 -62 -63 -63 -63 -60 -56 -54 -53 -54 -51 -53 -58 -64 -64 -61 -60 -61 -63 -66 -66 -64 -59 -48 -27 -20 -22 -31 -36 -45 -51 -50 -42 -46 -54 -60 -63 -62 -62 -63 -67 -73 -76 -78 -79 -80 -78 -76 -79 -82 -86 -87 -84 -72 -55 -40 -38 -41 -45 -47 -48 -47 -47 -47 -47 -48 -49 -52 -57 -64 -71 -76 -80 -83 -86 -87 -86 -87 -88 -89 -89 -93 -98 -105 -105 -99 -95 -94 -95 -97 -99 -99 -99 -99 -101 -105 -110 -115 -118 -118 -116 -112 -107 -102 -98 -99 -103 -110 -117 -123 -126 -127 -126 -127 -131 -135 -137 -139 -141 -143 -145 -146 -146 -145 -144 -144 -145 -144 -143 -141 -137 -133 -132 -132 -133 -133 -133 -130 -126 -121 -117 -115 -114 -115 -115 -115 -118 -122 -126 -125 -121 -116 -112 -108 -105 -104 -104 -103 -99 -96 -95 -94 -94 -92 -89 -88 -88 -88 -88 -88 -87 -86 -85 -84 -84 -84 -84 -84 -84 -84 -84 -84 -83 -83 -84 -85 -87 -85 -83 -83 -84 -85 -86 -85 -84 -83 -81 -79 -78 -76 -74 -72 -72 -71 -71 -69 -67 -66 -66 -66 -65 -64 -64 -64 -64 -63 -33 -36 -40 -44 -46 -43 -39 -35 -32 -33 -34 -34 -33 -32 -33 -36 -41 -44 -44 -46 -47 -47 -45 -47 -50 -51 -48 -42 -44 -54 -61 -58 -46 -50 -57 -61 -54 -49 -47 -41 -32 -29 -40 -50 -55 -54 -52 -50 -48 -45 -40 -30 -27 -31 -40 -49 -57 -63 -68 -72 -76 -79 -82 -84 -84 -79 -76 -73 -72 -72 -75 -80 -84 -87 -89 -87 -85 -83 -82 -80 -75 -71 -70 -74 -78 -78 -77 -77 -77 -75 -75 -74 -70 -59 -52 -53 -60 -69 -72 -74 -75 -77 -79 -79 -79 -75 -68 -62 -61 -62 -65 -66 -69 -73 -77 -77 -75 -72 -65 -56 -47 -45 -50 -55 -60 -60 -60 -64 -69 -74 -75 -76 -73 -68 -66 -71 -79 -81 -76 -67 -58 -55 -57 -62 -69 -76 -80 -83 -84 -84 -84 -84 -84 -83 -82 -79 -76 -74 -77 -80 -81 -78 -72 -66 -63 -60 -58 -56 -54 -50 -48 -50 -55 -57 -57 -56 -55 -55 -56 -55 -54 -53 -55 -60 -63 -63 -58 -56 -57 -59 -61 -61 -62 -63 -64 -64 -63 -61 -60 -59 -58 -54 -51 -51 -52 -54 -54 -55 -57 -60 -58 -57 -59 -63 -67 -70 -69 -64 -54 -39 -25 -22 -28 -38 -44 -50 -53 -51 -46 -48 -51 -56 -61 -62 -61 -64 -69 -74 -78 -80 -81 -80 -78 -76 -77 -81 -82 -78 -68 -57 -46 -40 -41 -43 -44 -46 -47 -47 -46 -45 -47 -49 -51 -55 -60 -67 -74 -79 -83 -86 -88 -89 -90 -91 -90 -88 -88 -91 -96 -101 -101 -98 -97 -98 -98 -100 -102 -102 -99 -98 -100 -105 -111 -116 -118 -118 -116 -112 -105 -99 -96 -98 -104 -111 -116 -121 -124 -126 -127 -129 -132 -134 -135 -136 -137 -139 -140 -140 -139 -139 -139 -141 -144 -144 -143 -139 -135 -131 -129 -129 -130 -130 -130 -129 -127 -123 -120 -117 -115 -114 -112 -114 -117 -121 -124 -121 -117 -114 -111 -108 -105 -103 -103 -101 -99 -97 -96 -95 -94 -92 -90 -89 -89 -89 -90 -90 -89 -88 -87 -85 -85 -85 -84 -84 -84 -85 -85 -84 -83 -84 -85 -87 -88 -86 -84 -84 -84 -85 -86 -86 -85 -84 -82 -81 -79 -77 -74 -72 -71 -71 -71 -69 -68 -67 -67 -66 -64 -64 -64 -64 -63 -62 -30 -35 -39 -44 -47 -44 -37 -31 -27 -27 -28 -30 -30 -28 -28 -33 -40 -44 -45 -46 -44 -41 -38 -42 -45 -46 -44 -40 -40 -48 -59 -69 -65 -63 -66 -69 -66 -61 -58 -53 -45 -35 -39 -47 -53 -53 -49 -45 -42 -37 -30 -23 -27 -36 -46 -53 -60 -66 -70 -74 -75 -76 -80 -82 -81 -77 -75 -74 -75 -78 -80 -82 -86 -89 -91 -90 -89 -87 -87 -85 -83 -82 -81 -81 -78 -74 -73 -76 -78 -75 -75 -75 -72 -62 -57 -58 -65 -71 -74 -75 -77 -78 -78 -77 -75 -72 -67 -65 -67 -70 -72 -73 -75 -77 -79 -77 -73 -67 -60 -53 -48 -46 -50 -55 -59 -59 -61 -66 -71 -73 -73 -70 -67 -66 -69 -78 -84 -82 -74 -64 -56 -55 -57 -61 -68 -74 -78 -81 -81 -79 -79 -79 -81 -81 -76 -70 -68 -69 -75 -79 -78 -74 -69 -67 -66 -63 -58 -52 -50 -47 -47 -49 -54 -55 -55 -55 -57 -58 -56 -54 -54 -54 -58 -62 -63 -60 -55 -55 -57 -60 -62 -64 -64 -65 -65 -65 -63 -60 -57 -55 -53 -50 -50 -51 -53 -54 -54 -55 -56 -57 -56 -57 -61 -66 -69 -69 -65 -56 -42 -28 -26 -30 -35 -42 -48 -54 -56 -55 -54 -56 -56 -57 -61 -63 -63 -66 -70 -74 -78 -82 -83 -82 -78 -75 -75 -73 -66 -54 -48 -46 -44 -43 -43 -43 -45 -47 -47 -45 -44 -45 -47 -49 -53 -57 -63 -70 -75 -78 -80 -82 -85 -88 -90 -90 -89 -86 -87 -91 -96 -99 -100 -101 -102 -104 -104 -104 -104 -102 -99 -98 -102 -107 -111 -115 -116 -117 -115 -109 -101 -96 -97 -100 -106 -110 -114 -119 -123 -126 -129 -131 -132 -132 -131 -131 -132 -133 -134 -134 -134 -136 -138 -141 -144 -144 -142 -138 -134 -130 -127 -126 -126 -127 -127 -127 -128 -128 -125 -121 -116 -113 -112 -113 -117 -120 -119 -115 -113 -111 -110 -107 -105 -103 -102 -101 -99 -98 -97 -96 -96 -94 -92 -91 -90 -91 -91 -91 -90 -89 -87 -86 -86 -86 -85 -85 -85 -85 -85 -84 -84 -85 -86 -88 -88 -86 -86 -86 -86 -85 -86 -86 -86 -85 -83 -82 -81 -79 -76 -73 -72 -72 -71 -70 -69 -69 -68 -66 -64 -63 -62 -62 -61 -61 -34 -37 -40 -41 -39 -35 -30 -25 -23 -23 -25 -28 -29 -25 -24 -29 -36 -41 -44 -47 -46 -43 -38 -38 -40 -42 -44 -44 -43 -47 -57 -68 -73 -72 -72 -73 -72 -69 -65 -62 -57 -48 -43 -45 -48 -48 -44 -39 -35 -31 -25 -22 -29 -41 -51 -58 -63 -67 -71 -75 -76 -77 -81 -82 -78 -73 -73 -75 -80 -86 -88 -88 -88 -88 -90 -90 -91 -90 -90 -87 -85 -84 -83 -78 -73 -72 -74 -78 -78 -76 -75 -75 -73 -66 -63 -65 -69 -71 -72 -74 -77 -78 -77 -76 -75 -75 -74 -74 -75 -77 -79 -79 -78 -79 -78 -76 -70 -61 -55 -52 -50 -47 -51 -54 -57 -59 -63 -68 -70 -70 -68 -67 -67 -71 -78 -86 -87 -81 -71 -62 -55 -54 -56 -61 -67 -72 -75 -76 -75 -72 -74 -78 -81 -78 -69 -64 -65 -70 -76 -78 -76 -73 -69 -67 -67 -63 -57 -49 -47 -46 -47 -50 -55 -55 -53 -54 -59 -62 -58 -55 -54 -57 -61 -62 -61 -58 -56 -57 -59 -62 -64 -66 -66 -65 -65 -64 -61 -57 -54 -51 -49 -48 -50 -52 -54 -54 -54 -55 -56 -57 -57 -60 -64 -68 -69 -63 -54 -42 -30 -27 -35 -41 -44 -47 -52 -60 -62 -60 -60 -61 -62 -63 -64 -65 -67 -70 -72 -74 -77 -81 -83 -84 -79 -74 -69 -62 -51 -44 -46 -48 -46 -43 -43 -43 -45 -48 -47 -44 -44 -46 -49 -50 -54 -60 -66 -71 -74 -75 -77 -79 -82 -85 -86 -85 -84 -84 -86 -89 -92 -94 -98 -104 -109 -112 -111 -108 -104 -100 -97 -98 -102 -106 -110 -112 -114 -114 -110 -103 -96 -96 -99 -103 -106 -108 -112 -117 -122 -127 -130 -131 -131 -129 -127 -126 -126 -128 -129 -131 -133 -136 -139 -142 -144 -144 -142 -139 -135 -130 -126 -123 -122 -124 -126 -128 -130 -132 -130 -126 -119 -114 -112 -114 -116 -116 -113 -110 -109 -110 -110 -108 -106 -104 -103 -102 -102 -100 -99 -99 -98 -97 -94 -93 -92 -92 -93 -92 -91 -89 -88 -87 -87 -87 -86 -85 -85 -85 -84 -84 -85 -87 -88 -89 -87 -87 -87 -87 -87 -86 -86 -86 -86 -84 -83 -81 -81 -80 -77 -75 -74 -73 -72 -71 -70 -70 -69 -68 -66 -64 -63 -62 -61 -60 -35 -37 -38 -35 -28 -24 -21 -18 -15 -16 -22 -27 -27 -21 -22 -26 -31 -35 -41 -47 -49 -48 -43 -37 -36 -38 -42 -46 -48 -51 -56 -63 -69 -71 -72 -71 -69 -67 -63 -60 -57 -53 -47 -44 -43 -42 -38 -32 -27 -23 -22 -24 -32 -40 -46 -50 -55 -62 -69 -74 -79 -83 -85 -82 -74 -68 -69 -74 -81 -88 -93 -94 -93 -91 -90 -87 -85 -84 -85 -85 -84 -80 -75 -71 -72 -74 -76 -77 -76 -77 -77 -77 -74 -69 -68 -67 -66 -66 -68 -71 -75 -79 -79 -78 -79 -81 -83 -82 -82 -83 -83 -83 -81 -80 -78 -74 -66 -57 -52 -51 -51 -50 -52 -54 -55 -58 -64 -68 -68 -66 -67 -70 -73 -78 -84 -89 -85 -77 -67 -61 -57 -56 -58 -62 -67 -72 -73 -72 -70 -69 -74 -79 -79 -70 -63 -63 -67 -73 -76 -77 -75 -72 -70 -67 -64 -60 -54 -47 -44 -44 -48 -52 -56 -55 -53 -54 -59 -62 -60 -58 -57 -59 -62 -61 -59 -57 -59 -61 -63 -64 -65 -65 -64 -64 -63 -61 -57 -54 -51 -48 -46 -47 -51 -54 -55 -55 -55 -55 -57 -58 -61 -64 -68 -70 -66 -53 -42 -35 -33 -36 -43 -48 -50 -52 -57 -64 -66 -63 -61 -61 -63 -65 -67 -68 -70 -72 -73 -74 -75 -78 -82 -83 -78 -70 -62 -54 -47 -49 -53 -53 -47 -42 -42 -44 -46 -47 -45 -44 -46 -50 -53 -53 -57 -62 -68 -71 -71 -72 -73 -75 -77 -79 -80 -80 -80 -81 -85 -88 -90 -93 -100 -106 -111 -115 -115 -111 -104 -98 -95 -98 -102 -105 -107 -108 -110 -108 -103 -96 -94 -97 -101 -104 -105 -107 -111 -117 -123 -128 -131 -132 -131 -127 -123 -122 -122 -124 -127 -130 -134 -137 -140 -142 -144 -144 -142 -139 -135 -130 -126 -122 -121 -122 -125 -128 -132 -133 -132 -127 -121 -115 -113 -113 -113 -112 -110 -109 -109 -110 -111 -111 -109 -106 -105 -106 -105 -103 -101 -100 -100 -99 -97 -96 -95 -94 -93 -92 -91 -90 -89 -88 -88 -87 -86 -85 -85 -85 -85 -87 -88 -89 -89 -89 -87 -87 -88 -88 -87 -87 -86 -86 -86 -84 -82 -81 -80 -79 -77 -76 -75 -75 -74 -72 -70 -70 -70 -69 -67 -66 -65 -63 -61 -59 -30 -33 -34 -30 -23 -21 -20 -18 -14 -13 -19 -23 -23 -19 -21 -23 -25 -29 -37 -47 -51 -52 -49 -43 -38 -37 -39 -43 -50 -54 -57 -59 -61 -64 -64 -63 -60 -59 -56 -52 -48 -46 -46 -43 -41 -39 -35 -27 -21 -18 -20 -24 -29 -32 -35 -38 -47 -56 -65 -73 -80 -83 -83 -78 -69 -65 -68 -75 -83 -88 -90 -91 -91 -89 -86 -79 -76 -76 -77 -75 -73 -69 -66 -65 -69 -70 -71 -70 -75 -78 -80 -79 -75 -67 -61 -58 -58 -60 -66 -71 -76 -79 -82 -83 -82 -82 -82 -82 -82 -83 -84 -84 -82 -79 -75 -69 -62 -55 -52 -52 -54 -54 -55 -55 -56 -58 -63 -67 -69 -70 -73 -76 -80 -84 -85 -85 -80 -71 -64 -62 -61 -60 -60 -63 -68 -73 -75 -74 -71 -72 -78 -80 -75 -63 -61 -65 -70 -75 -77 -77 -75 -73 -70 -66 -61 -56 -51 -45 -43 -45 -49 -54 -56 -54 -53 -55 -60 -62 -60 -60 -61 -64 -65 -63 -61 -61 -64 -65 -65 -65 -64 -61 -60 -61 -61 -58 -54 -52 -49 -46 -45 -48 -52 -56 -57 -56 -56 -57 -60 -62 -65 -68 -69 -68 -60 -47 -40 -39 -43 -49 -53 -54 -53 -55 -61 -67 -68 -63 -60 -61 -63 -65 -67 -70 -72 -73 -73 -73 -74 -76 -77 -77 -73 -66 -58 -52 -49 -54 -58 -57 -51 -45 -44 -46 -48 -48 -46 -47 -49 -53 -56 -58 -62 -66 -69 -69 -69 -69 -71 -72 -74 -76 -78 -79 -81 -84 -88 -89 -90 -94 -101 -106 -110 -113 -114 -112 -106 -100 -96 -97 -100 -102 -103 -104 -103 -100 -95 -91 -94 -98 -102 -105 -106 -108 -112 -117 -123 -128 -131 -132 -130 -124 -119 -118 -119 -123 -128 -132 -135 -138 -140 -142 -143 -143 -141 -139 -136 -131 -126 -122 -121 -122 -124 -127 -132 -132 -128 -123 -118 -114 -112 -112 -111 -110 -109 -110 -111 -113 -117 -117 -113 -109 -107 -109 -108 -105 -102 -101 -100 -100 -99 -99 -98 -96 -94 -93 -92 -91 -90 -90 -89 -88 -86 -85 -85 -85 -86 -89 -90 -90 -89 -88 -87 -87 -88 -87 -87 -87 -87 -86 -85 -84 -82 -81 -80 -79 -77 -77 -78 -77 -76 -73 -70 -69 -70 -70 -69 -67 -66 -63 -61 -60 -27 -32 -33 -30 -23 -24 -24 -22 -18 -17 -20 -22 -22 -21 -22 -22 -23 -26 -34 -47 -53 -53 -50 -48 -45 -42 -41 -43 -50 -56 -59 -59 -57 -57 -56 -55 -54 -53 -51 -48 -45 -44 -44 -40 -37 -35 -32 -25 -21 -22 -30 -40 -42 -42 -42 -45 -53 -62 -70 -77 -81 -78 -75 -70 -66 -66 -70 -76 -83 -88 -90 -90 -88 -83 -78 -73 -71 -71 -70 -69 -67 -63 -60 -60 -64 -65 -67 -71 -79 -81 -81 -79 -72 -61 -54 -51 -54 -61 -67 -74 -79 -83 -84 -85 -84 -82 -80 -80 -81 -82 -83 -82 -79 -74 -69 -65 -60 -56 -55 -55 -55 -54 -55 -55 -56 -58 -64 -70 -75 -77 -79 -82 -83 -81 -78 -78 -73 -66 -60 -59 -61 -61 -62 -64 -72 -78 -80 -79 -77 -78 -84 -82 -73 -61 -64 -69 -74 -77 -77 -76 -75 -73 -71 -67 -61 -55 -49 -45 -45 -47 -51 -55 -55 -52 -52 -56 -62 -63 -61 -61 -64 -67 -67 -66 -66 -66 -67 -66 -65 -63 -60 -57 -57 -58 -57 -53 -50 -49 -48 -48 -48 -50 -53 -57 -58 -57 -58 -60 -64 -66 -67 -67 -65 -60 -51 -46 -46 -49 -54 -59 -59 -57 -54 -57 -64 -70 -72 -67 -62 -63 -64 -66 -69 -73 -76 -77 -76 -74 -74 -73 -72 -69 -68 -64 -59 -55 -55 -57 -60 -59 -56 -50 -47 -47 -50 -51 -50 -50 -52 -56 -58 -61 -65 -68 -70 -71 -72 -73 -74 -74 -76 -79 -82 -84 -87 -89 -90 -90 -92 -97 -102 -107 -110 -112 -113 -112 -109 -104 -100 -99 -98 -99 -100 -98 -95 -92 -89 -90 -95 -100 -103 -105 -107 -108 -111 -116 -122 -126 -129 -129 -127 -120 -115 -114 -118 -123 -130 -133 -135 -137 -138 -140 -141 -141 -140 -139 -136 -132 -128 -123 -121 -122 -124 -128 -131 -128 -122 -116 -112 -111 -110 -110 -110 -109 -108 -109 -112 -116 -120 -119 -114 -108 -107 -110 -108 -105 -101 -100 -100 -100 -101 -100 -100 -98 -97 -94 -93 -92 -90 -90 -89 -87 -86 -85 -85 -86 -88 -90 -90 -89 -88 -88 -88 -87 -87 -87 -87 -87 -87 -86 -85 -83 -82 -81 -80 -79 -79 -79 -80 -80 -78 -75 -71 -70 -71 -70 -69 -68 -66 -64 -62 -62 -29 -35 -38 -35 -28 -28 -29 -28 -25 -23 -24 -26 -26 -25 -24 -24 -24 -27 -34 -46 -55 -56 -49 -45 -48 -50 -48 -46 -47 -51 -54 -55 -52 -51 -51 -50 -49 -47 -48 -49 -49 -48 -47 -43 -37 -32 -28 -22 -20 -23 -35 -49 -56 -59 -60 -61 -64 -68 -72 -77 -80 -76 -68 -63 -63 -71 -77 -83 -87 -90 -91 -89 -83 -74 -67 -65 -66 -67 -66 -67 -67 -66 -65 -65 -67 -67 -70 -77 -85 -85 -82 -77 -68 -58 -52 -52 -57 -66 -73 -80 -85 -88 -88 -86 -83 -80 -77 -79 -80 -81 -80 -79 -72 -66 -62 -59 -59 -58 -57 -55 -54 -53 -54 -56 -58 -63 -70 -76 -80 -82 -83 -82 -78 -72 -70 -74 -71 -65 -58 -57 -61 -62 -64 -67 -75 -81 -84 -86 -86 -88 -88 -82 -71 -66 -72 -77 -79 -79 -77 -75 -74 -74 -73 -71 -65 -58 -51 -48 -48 -50 -53 -54 -53 -51 -52 -57 -63 -64 -62 -63 -65 -68 -69 -69 -70 -69 -67 -64 -61 -58 -56 -55 -56 -56 -55 -50 -47 -47 -48 -51 -52 -54 -56 -59 -60 -59 -60 -63 -66 -67 -66 -63 -57 -50 -45 -48 -54 -59 -61 -62 -61 -58 -56 -59 -66 -72 -74 -70 -64 -63 -65 -68 -73 -78 -80 -79 -75 -73 -72 -71 -69 -67 -65 -62 -58 -56 -58 -59 -60 -60 -59 -54 -48 -47 -49 -53 -52 -53 -56 -59 -60 -63 -67 -70 -73 -75 -77 -78 -79 -80 -82 -85 -87 -89 -91 -91 -90 -91 -95 -100 -105 -108 -111 -112 -112 -111 -109 -105 -101 -99 -98 -97 -95 -91 -88 -86 -87 -90 -95 -100 -103 -105 -107 -108 -110 -114 -118 -122 -125 -124 -121 -115 -112 -113 -118 -125 -130 -133 -134 -134 -135 -137 -138 -138 -138 -137 -135 -132 -129 -124 -122 -124 -127 -130 -130 -125 -117 -111 -108 -108 -108 -109 -110 -109 -108 -110 -113 -118 -120 -117 -111 -106 -107 -108 -106 -102 -100 -100 -100 -101 -101 -101 -101 -99 -98 -96 -93 -92 -90 -89 -88 -86 -86 -86 -86 -87 -89 -89 -89 -88 -88 -89 -88 -87 -87 -86 -86 -86 -86 -85 -85 -83 -82 -81 -81 -81 -81 -83 -83 -82 -79 -76 -73 -72 -71 -70 -69 -68 -67 -65 -64 -64 -33 -40 -43 -40 -33 -32 -33 -33 -31 -28 -29 -31 -32 -31 -28 -27 -27 -29 -34 -45 -56 -59 -50 -39 -42 -48 -52 -50 -46 -47 -50 -52 -50 -48 -49 -47 -43 -41 -45 -49 -51 -49 -48 -44 -37 -29 -23 -19 -18 -24 -38 -52 -63 -68 -68 -66 -66 -68 -72 -78 -80 -73 -65 -61 -65 -76 -85 -90 -93 -92 -91 -88 -80 -68 -60 -59 -62 -65 -67 -70 -73 -76 -77 -77 -75 -76 -79 -85 -89 -85 -80 -73 -65 -59 -57 -60 -66 -74 -80 -86 -89 -90 -87 -84 -81 -78 -76 -77 -78 -78 -77 -73 -64 -57 -54 -54 -57 -59 -57 -54 -53 -53 -54 -57 -63 -69 -75 -78 -80 -80 -78 -74 -69 -66 -68 -73 -71 -65 -58 -57 -61 -64 -67 -71 -77 -81 -83 -84 -85 -85 -81 -75 -70 -73 -77 -79 -78 -76 -77 -77 -77 -77 -78 -76 -70 -63 -57 -53 -53 -53 -52 -51 -49 -49 -52 -57 -63 -64 -65 -65 -67 -69 -70 -70 -69 -67 -63 -59 -57 -55 -53 -54 -55 -55 -52 -48 -47 -48 -50 -53 -56 -59 -61 -62 -62 -62 -63 -65 -66 -66 -65 -59 -50 -42 -45 -52 -59 -64 -64 -63 -61 -59 -58 -62 -69 -74 -74 -71 -65 -64 -66 -70 -76 -80 -80 -75 -68 -64 -65 -67 -68 -70 -68 -61 -53 -49 -53 -56 -59 -61 -60 -56 -50 -47 -48 -52 -54 -56 -58 -61 -63 -66 -70 -73 -75 -77 -80 -81 -82 -83 -85 -87 -88 -89 -90 -90 -91 -93 -98 -103 -107 -110 -111 -111 -111 -109 -107 -103 -99 -97 -94 -92 -87 -83 -82 -83 -87 -90 -95 -99 -103 -105 -107 -107 -108 -110 -114 -118 -120 -119 -115 -110 -111 -115 -120 -126 -130 -132 -133 -133 -133 -133 -134 -135 -135 -135 -134 -132 -128 -124 -123 -126 -131 -134 -132 -125 -117 -111 -106 -104 -106 -108 -110 -110 -110 -111 -114 -117 -119 -115 -110 -106 -105 -104 -102 -101 -100 -100 -100 -101 -102 -102 -102 -100 -98 -97 -95 -93 -91 -89 -88 -87 -86 -86 -87 -89 -89 -88 -87 -87 -88 -89 -88 -87 -87 -86 -85 -85 -85 -84 -84 -83 -82 -81 -82 -83 -84 -85 -84 -82 -80 -77 -75 -73 -72 -71 -70 -69 -68 -66 -65 -64 -38 -45 -47 -43 -35 -33 -35 -37 -37 -34 -34 -36 -36 -35 -32 -30 -30 -32 -36 -44 -54 -59 -52 -38 -38 -45 -52 -53 -48 -46 -48 -51 -51 -49 -49 -48 -44 -38 -42 -48 -52 -49 -46 -41 -33 -25 -20 -19 -24 -34 -47 -59 -65 -66 -63 -60 -62 -66 -72 -79 -81 -70 -62 -61 -70 -82 -90 -94 -95 -92 -91 -87 -79 -68 -59 -57 -61 -67 -72 -77 -81 -84 -85 -86 -84 -85 -87 -89 -86 -80 -75 -70 -65 -65 -67 -71 -76 -81 -85 -88 -88 -86 -83 -81 -78 -77 -76 -76 -76 -76 -73 -65 -55 -50 -49 -51 -55 -59 -58 -55 -53 -52 -54 -59 -65 -71 -73 -74 -73 -72 -69 -66 -64 -66 -70 -74 -71 -64 -57 -58 -63 -66 -70 -74 -77 -78 -78 -78 -79 -78 -76 -73 -73 -77 -77 -77 -77 -79 -80 -80 -81 -82 -82 -77 -72 -67 -63 -60 -56 -53 -51 -49 -48 -49 -51 -55 -62 -66 -68 -69 -71 -71 -69 -66 -63 -60 -57 -55 -53 -53 -53 -56 -56 -53 -49 -48 -49 -50 -53 -56 -61 -64 -66 -67 -65 -65 -65 -66 -66 -68 -70 -66 -56 -47 -49 -56 -64 -67 -65 -65 -64 -62 -63 -68 -73 -74 -72 -70 -65 -65 -68 -74 -80 -82 -79 -72 -65 -62 -63 -66 -69 -71 -67 -55 -43 -39 -46 -52 -56 -59 -62 -59 -54 -50 -48 -51 -55 -57 -59 -62 -66 -70 -72 -73 -74 -77 -80 -82 -82 -84 -86 -86 -86 -87 -91 -92 -94 -96 -101 -105 -109 -111 -111 -110 -109 -107 -104 -101 -98 -95 -90 -83 -78 -78 -80 -83 -87 -89 -94 -98 -102 -105 -105 -105 -105 -107 -111 -115 -117 -115 -111 -109 -112 -117 -122 -127 -130 -132 -132 -131 -130 -130 -131 -133 -134 -134 -133 -130 -127 -122 -122 -127 -134 -138 -130 -122 -116 -114 -110 -106 -106 -108 -111 -112 -112 -112 -112 -114 -115 -114 -112 -109 -106 -104 -102 -100 -99 -99 -99 -100 -102 -103 -102 -101 -100 -98 -96 -94 -92 -90 -88 -87 -87 -87 -89 -89 -88 -86 -86 -87 -88 -88 -88 -88 -87 -86 -85 -85 -84 -84 -84 -84 -82 -83 -84 -85 -86 -86 -84 -82 -80 -79 -77 -75 -73 -72 -71 -71 -69 -67 -65 -63 -42 -49 -52 -50 -43 -40 -43 -46 -46 -44 -44 -45 -47 -47 -42 -37 -34 -35 -39 -44 -53 -57 -54 -40 -37 -42 -50 -54 -52 -50 -50 -51 -52 -50 -50 -48 -46 -39 -41 -46 -50 -47 -42 -35 -28 -22 -18 -22 -32 -45 -57 -65 -64 -60 -57 -56 -62 -67 -74 -80 -80 -66 -59 -62 -74 -86 -91 -93 -92 -91 -90 -85 -78 -71 -65 -63 -65 -70 -76 -82 -84 -85 -85 -88 -88 -87 -86 -84 -77 -71 -69 -69 -72 -74 -76 -78 -81 -83 -84 -85 -84 -81 -79 -77 -76 -75 -74 -75 -75 -74 -69 -57 -48 -45 -46 -51 -56 -59 -59 -56 -53 -51 -53 -58 -64 -67 -65 -65 -65 -64 -64 -65 -67 -70 -74 -75 -71 -63 -58 -59 -64 -68 -73 -76 -77 -77 -77 -78 -78 -77 -76 -76 -76 -77 -78 -80 -81 -84 -85 -84 -83 -82 -81 -76 -70 -65 -62 -59 -55 -51 -49 -49 -50 -51 -52 -56 -61 -67 -70 -71 -70 -68 -63 -59 -55 -54 -54 -54 -54 -54 -57 -60 -57 -51 -46 -48 -51 -53 -56 -61 -65 -69 -71 -71 -69 -68 -69 -69 -70 -73 -77 -74 -65 -55 -53 -59 -66 -70 -68 -69 -69 -68 -69 -72 -75 -74 -70 -68 -66 -67 -72 -79 -84 -84 -80 -73 -66 -63 -64 -67 -71 -72 -63 -48 -36 -35 -43 -49 -54 -59 -63 -62 -58 -52 -48 -51 -54 -57 -59 -64 -70 -73 -74 -73 -74 -78 -81 -84 -84 -85 -85 -83 -85 -91 -94 -95 -96 -98 -102 -105 -108 -109 -110 -108 -107 -105 -103 -101 -98 -92 -84 -76 -73 -76 -80 -85 -87 -90 -93 -96 -100 -103 -104 -103 -103 -105 -110 -114 -115 -113 -109 -109 -112 -117 -122 -127 -130 -131 -131 -129 -128 -128 -129 -132 -134 -133 -132 -128 -123 -119 -121 -128 -136 -137 -126 -119 -116 -117 -115 -112 -111 -112 -114 -113 -110 -108 -107 -108 -109 -111 -111 -110 -108 -106 -103 -101 -99 -97 -96 -98 -101 -102 -103 -103 -102 -100 -97 -95 -93 -91 -89 -88 -88 -89 -90 -89 -88 -87 -87 -88 -88 -88 -88 -88 -87 -86 -85 -85 -84 -83 -83 -83 -83 -85 -87 -88 -88 -87 -84 -81 -80 -79 -79 -77 -74 -73 -72 -71 -69 -67 -65 -63 -42 -50 -56 -58 -55 -52 -54 -55 -54 -51 -50 -53 -57 -60 -58 -50 -43 -39 -40 -44 -52 -57 -57 -45 -39 -42 -48 -54 -54 -53 -52 -53 -54 -52 -49 -46 -45 -43 -43 -44 -45 -43 -38 -31 -25 -20 -19 -26 -37 -48 -57 -62 -61 -59 -59 -62 -68 -72 -77 -80 -77 -63 -58 -64 -77 -86 -89 -90 -89 -89 -87 -82 -78 -77 -76 -75 -75 -77 -81 -84 -82 -79 -78 -83 -85 -83 -80 -74 -66 -64 -67 -73 -80 -83 -83 -83 -84 -84 -82 -80 -78 -77 -77 -76 -75 -74 -74 -74 -73 -70 -62 -48 -42 -42 -47 -54 -57 -59 -59 -56 -50 -48 -50 -55 -60 -60 -60 -60 -62 -63 -66 -71 -74 -76 -78 -74 -69 -63 -61 -61 -63 -68 -73 -77 -77 -78 -80 -81 -82 -81 -81 -81 -81 -80 -82 -84 -87 -89 -88 -84 -81 -79 -78 -74 -69 -64 -61 -58 -54 -51 -49 -50 -51 -53 -56 -60 -64 -68 -70 -69 -66 -62 -59 -57 -57 -59 -60 -61 -61 -62 -65 -63 -57 -50 -46 -49 -53 -56 -61 -67 -71 -74 -76 -77 -74 -73 -73 -73 -74 -77 -78 -75 -66 -58 -57 -62 -68 -72 -71 -72 -72 -71 -71 -72 -73 -72 -68 -66 -67 -72 -78 -83 -86 -84 -78 -72 -67 -66 -67 -70 -72 -67 -53 -40 -35 -40 -46 -50 -54 -59 -64 -65 -63 -59 -53 -52 -53 -55 -58 -64 -69 -72 -73 -73 -75 -79 -83 -86 -87 -85 -81 -81 -86 -95 -97 -97 -97 -99 -102 -105 -107 -108 -108 -107 -106 -104 -103 -102 -97 -89 -79 -72 -73 -77 -81 -84 -87 -89 -92 -95 -99 -103 -104 -104 -104 -107 -110 -112 -112 -110 -107 -108 -112 -117 -122 -126 -129 -130 -130 -128 -126 -126 -128 -131 -134 -134 -131 -127 -121 -118 -121 -128 -137 -135 -124 -117 -116 -118 -117 -114 -112 -111 -110 -107 -104 -103 -103 -106 -107 -108 -108 -109 -108 -107 -106 -104 -99 -96 -94 -95 -98 -101 -103 -104 -103 -102 -98 -95 -93 -91 -90 -90 -90 -90 -91 -90 -90 -90 -90 -90 -90 -89 -89 -88 -87 -86 -85 -85 -84 -83 -83 -84 -85 -88 -90 -90 -90 -88 -84 -81 -79 -79 -79 -77 -75 -73 -71 -70 -68 -66 -65 -64 -47 -51 -56 -59 -60 -58 -59 -59 -59 -57 -56 -58 -61 -65 -67 -62 -52 -42 -39 -43 -50 -57 -59 -50 -43 -43 -47 -52 -55 -55 -54 -53 -54 -52 -45 -41 -42 -47 -48 -45 -41 -38 -34 -28 -22 -21 -28 -37 -43 -47 -51 -56 -61 -65 -68 -72 -76 -80 -82 -80 -69 -57 -56 -63 -74 -79 -82 -84 -86 -87 -86 -82 -80 -79 -80 -81 -83 -84 -84 -80 -72 -70 -74 -81 -79 -73 -67 -63 -62 -66 -72 -77 -82 -86 -88 -88 -86 -81 -77 -74 -74 -74 -75 -76 -76 -75 -74 -73 -71 -65 -55 -42 -38 -42 -49 -56 -57 -59 -58 -54 -49 -47 -49 -53 -57 -59 -61 -63 -65 -69 -73 -77 -79 -79 -78 -71 -66 -62 -62 -60 -61 -66 -73 -78 -79 -80 -83 -86 -86 -85 -84 -85 -85 -85 -86 -88 -89 -88 -84 -80 -77 -75 -74 -69 -63 -60 -59 -56 -53 -51 -50 -51 -54 -58 -61 -63 -64 -66 -67 -67 -64 -62 -61 -62 -63 -63 -65 -67 -68 -67 -67 -60 -53 -48 -47 -51 -55 -61 -67 -75 -78 -80 -82 -82 -79 -77 -75 -74 -73 -74 -74 -70 -63 -59 -59 -64 -69 -73 -74 -74 -72 -69 -68 -71 -74 -73 -67 -66 -70 -75 -81 -84 -83 -78 -73 -69 -68 -69 -72 -74 -71 -56 -40 -35 -41 -50 -53 -53 -54 -57 -62 -66 -67 -65 -61 -57 -55 -56 -59 -64 -67 -68 -69 -71 -74 -78 -83 -87 -86 -80 -77 -80 -90 -97 -97 -98 -99 -101 -103 -105 -106 -107 -108 -108 -106 -105 -103 -100 -93 -83 -75 -72 -75 -78 -81 -84 -87 -90 -93 -96 -100 -104 -106 -106 -106 -105 -105 -104 -103 -102 -103 -106 -111 -116 -120 -124 -127 -129 -129 -127 -126 -125 -127 -130 -134 -134 -132 -127 -121 -118 -119 -126 -134 -133 -123 -117 -115 -118 -116 -113 -110 -107 -107 -106 -104 -104 -105 -108 -108 -107 -106 -106 -106 -107 -107 -108 -103 -98 -93 -92 -95 -100 -104 -105 -105 -102 -98 -96 -93 -92 -92 -92 -91 -91 -91 -91 -92 -92 -93 -92 -91 -90 -89 -88 -87 -87 -86 -86 -84 -83 -84 -85 -87 -89 -90 -90 -89 -87 -85 -82 -80 -79 -79 -78 -75 -72 -71 -69 -67 -66 -66 -66 -53 -55 -56 -57 -58 -57 -57 -58 -60 -61 -60 -60 -61 -64 -67 -65 -55 -43 -37 -41 -47 -55 -59 -55 -47 -45 -47 -52 -54 -55 -54 -52 -50 -45 -37 -34 -38 -50 -53 -50 -43 -36 -30 -23 -20 -25 -38 -52 -59 -62 -63 -65 -67 -69 -70 -71 -75 -80 -82 -78 -67 -56 -53 -57 -65 -69 -74 -80 -84 -85 -83 -81 -80 -80 -81 -82 -85 -87 -85 -75 -66 -65 -72 -80 -75 -66 -60 -59 -64 -71 -77 -81 -84 -86 -89 -90 -88 -83 -76 -73 -72 -74 -76 -76 -76 -75 -74 -72 -69 -61 -49 -38 -37 -43 -51 -56 -58 -58 -56 -53 -49 -47 -49 -53 -58 -62 -66 -70 -73 -77 -80 -83 -84 -82 -76 -69 -64 -61 -61 -60 -61 -67 -75 -81 -82 -83 -85 -87 -88 -87 -86 -86 -86 -87 -88 -88 -85 -79 -76 -74 -73 -72 -70 -63 -56 -53 -54 -53 -51 -50 -50 -51 -57 -62 -65 -65 -63 -62 -63 -65 -66 -65 -63 -63 -63 -65 -68 -69 -67 -65 -60 -51 -47 -48 -51 -54 -59 -67 -75 -83 -86 -86 -85 -82 -78 -75 -73 -70 -68 -69 -67 -64 -61 -59 -62 -66 -71 -74 -76 -76 -73 -70 -68 -72 -75 -73 -67 -68 -72 -78 -82 -84 -81 -76 -72 -72 -71 -73 -77 -78 -69 -46 -35 -37 -49 -57 -58 -57 -56 -55 -59 -64 -67 -68 -64 -58 -56 -57 -60 -65 -66 -66 -65 -67 -70 -75 -81 -83 -78 -72 -74 -83 -94 -98 -99 -100 -101 -102 -104 -105 -105 -106 -107 -107 -106 -104 -101 -92 -83 -77 -75 -76 -77 -79 -82 -85 -90 -94 -96 -99 -103 -106 -108 -107 -104 -97 -93 -92 -93 -95 -99 -103 -108 -113 -117 -122 -125 -128 -128 -127 -126 -125 -126 -129 -133 -134 -133 -128 -122 -117 -116 -120 -127 -126 -120 -114 -113 -117 -116 -112 -107 -104 -106 -107 -107 -107 -107 -107 -107 -105 -103 -103 -104 -106 -109 -112 -108 -101 -95 -90 -91 -98 -103 -105 -104 -99 -97 -95 -94 -94 -93 -93 -92 -91 -91 -92 -92 -93 -94 -93 -92 -91 -90 -89 -88 -87 -87 -86 -84 -84 -85 -87 -88 -89 -90 -89 -87 -86 -85 -83 -81 -79 -79 -77 -74 -72 -71 -69 -68 -68 -68 -68 -58 -58 -57 -55 -55 -54 -52 -54 -59 -63 -63 -61 -60 -61 -64 -61 -52 -41 -34 -37 -43 -50 -55 -56 -52 -49 -48 -50 -52 -50 -49 -47 -44 -39 -32 -30 -35 -48 -58 -58 -52 -43 -33 -24 -19 -23 -36 -50 -59 -64 -66 -65 -64 -64 -67 -71 -78 -80 -78 -75 -72 -67 -63 -61 -63 -67 -74 -79 -82 -83 -82 -81 -81 -81 -82 -84 -86 -86 -81 -69 -63 -64 -68 -71 -65 -61 -61 -65 -72 -77 -81 -84 -86 -88 -90 -92 -91 -86 -79 -74 -73 -74 -76 -76 -76 -76 -75 -72 -66 -56 -44 -36 -38 -44 -51 -55 -57 -56 -55 -52 -49 -48 -50 -55 -61 -67 -70 -73 -76 -80 -84 -86 -83 -76 -67 -64 -64 -63 -62 -63 -66 -72 -79 -85 -86 -86 -86 -88 -89 -89 -87 -86 -85 -84 -82 -78 -72 -67 -70 -72 -72 -70 -68 -60 -53 -49 -51 -50 -50 -50 -51 -53 -60 -64 -67 -66 -63 -61 -62 -64 -66 -65 -64 -63 -64 -66 -67 -66 -61 -56 -51 -47 -47 -50 -54 -62 -69 -75 -81 -86 -88 -87 -83 -76 -69 -66 -64 -62 -66 -67 -64 -61 -61 -61 -65 -69 -73 -76 -78 -78 -77 -72 -70 -73 -74 -73 -69 -69 -74 -79 -84 -84 -82 -79 -75 -75 -75 -79 -82 -80 -66 -46 -39 -44 -54 -57 -58 -58 -57 -55 -57 -62 -66 -67 -63 -58 -58 -61 -67 -73 -73 -70 -66 -67 -73 -78 -79 -74 -66 -67 -75 -87 -96 -100 -101 -102 -102 -101 -102 -103 -103 -103 -105 -106 -106 -103 -96 -86 -79 -75 -76 -77 -78 -80 -84 -90 -95 -98 -100 -102 -105 -107 -109 -108 -101 -87 -80 -80 -85 -90 -96 -101 -106 -111 -115 -119 -124 -127 -128 -127 -126 -125 -126 -128 -132 -133 -133 -130 -123 -115 -110 -111 -117 -118 -113 -109 -110 -116 -116 -112 -107 -104 -105 -108 -109 -109 -107 -105 -105 -104 -101 -100 -101 -105 -111 -115 -111 -104 -96 -92 -92 -96 -101 -102 -101 -98 -96 -95 -96 -95 -94 -94 -92 -92 -91 -92 -93 -94 -94 -94 -93 -92 -91 -89 -88 -88 -88 -86 -85 -86 -88 -89 -88 -88 -89 -89 -87 -86 -85 -84 -82 -81 -78 -75 -73 -73 -72 -71 -70 -70 -69 -69 -55 -57 -56 -55 -54 -51 -50 -53 -58 -61 -62 -62 -62 -63 -63 -55 -44 -33 -25 -27 -36 -44 -49 -52 -52 -51 -50 -48 -46 -45 -45 -45 -43 -40 -38 -38 -42 -50 -56 -57 -55 -49 -42 -32 -25 -23 -30 -44 -55 -61 -61 -59 -58 -60 -66 -74 -79 -76 -71 -68 -70 -74 -74 -73 -72 -73 -77 -81 -84 -84 -84 -84 -83 -83 -84 -85 -83 -79 -71 -63 -59 -59 -61 -61 -60 -62 -67 -74 -79 -83 -85 -87 -89 -91 -92 -93 -93 -89 -82 -77 -75 -77 -78 -78 -77 -76 -75 -70 -63 -53 -42 -36 -38 -44 -49 -53 -55 -55 -55 -53 -51 -49 -51 -55 -62 -67 -71 -73 -76 -79 -83 -80 -73 -64 -60 -62 -63 -64 -63 -64 -68 -75 -81 -86 -86 -85 -84 -84 -82 -80 -78 -76 -75 -74 -71 -66 -62 -65 -71 -74 -73 -71 -67 -60 -54 -51 -52 -52 -52 -52 -54 -57 -61 -65 -67 -66 -63 -62 -63 -65 -65 -64 -64 -64 -66 -65 -62 -58 -53 -49 -46 -46 -49 -55 -62 -69 -74 -79 -82 -84 -83 -79 -73 -68 -64 -62 -62 -63 -68 -67 -64 -62 -63 -64 -68 -72 -76 -79 -82 -82 -80 -74 -72 -73 -74 -72 -70 -70 -75 -80 -84 -84 -84 -83 -82 -83 -83 -84 -81 -72 -53 -44 -47 -54 -57 -55 -56 -56 -56 -56 -57 -61 -64 -65 -62 -59 -61 -66 -74 -81 -80 -76 -71 -71 -74 -74 -69 -62 -62 -70 -82 -92 -98 -102 -103 -103 -102 -100 -98 -98 -99 -101 -103 -105 -104 -100 -92 -83 -78 -75 -75 -76 -78 -83 -89 -95 -99 -101 -102 -103 -105 -107 -108 -107 -99 -83 -73 -72 -78 -86 -93 -99 -105 -110 -114 -118 -122 -125 -127 -127 -126 -125 -125 -127 -130 -132 -132 -130 -125 -116 -107 -100 -102 -108 -110 -109 -107 -110 -113 -112 -109 -104 -104 -106 -108 -107 -104 -102 -102 -102 -99 -98 -100 -105 -111 -114 -109 -102 -96 -95 -96 -98 -100 -101 -100 -98 -96 -95 -95 -95 -95 -94 -93 -93 -92 -92 -92 -93 -94 -94 -93 -93 -91 -90 -89 -89 -89 -87 -87 -88 -89 -89 -89 -88 -87 -88 -87 -87 -86 -84 -82 -81 -78 -76 -75 -75 -75 -73 -72 -72 -71 -70 -48 -49 -50 -51 -51 -52 -55 -57 -59 -58 -58 -61 -62 -60 -57 -50 -40 -30 -21 -21 -30 -40 -49 -53 -49 -48 -47 -46 -42 -40 -41 -42 -42 -44 -47 -50 -52 -53 -52 -52 -51 -50 -50 -44 -35 -27 -27 -40 -52 -56 -53 -51 -56 -62 -69 -74 -74 -67 -61 -59 -64 -74 -80 -82 -82 -81 -83 -85 -87 -88 -87 -86 -86 -85 -84 -80 -74 -65 -57 -55 -53 -53 -53 -56 -62 -68 -74 -80 -84 -86 -88 -89 -91 -92 -92 -93 -93 -91 -85 -80 -78 -78 -79 -79 -78 -76 -74 -69 -61 -52 -43 -37 -39 -43 -48 -51 -53 -55 -55 -54 -53 -51 -52 -56 -61 -66 -69 -72 -74 -77 -75 -68 -60 -55 -58 -63 -64 -63 -61 -62 -67 -73 -79 -80 -78 -78 -76 -72 -68 -66 -65 -66 -67 -69 -67 -65 -65 -72 -76 -77 -74 -70 -62 -55 -51 -51 -54 -56 -54 -53 -55 -61 -63 -65 -66 -65 -62 -62 -64 -65 -65 -64 -65 -66 -67 -62 -54 -49 -47 -46 -45 -48 -54 -61 -68 -73 -76 -78 -78 -74 -71 -69 -67 -69 -66 -64 -63 -67 -71 -68 -65 -63 -65 -66 -70 -75 -80 -85 -88 -87 -81 -74 -73 -73 -74 -72 -71 -72 -76 -80 -83 -86 -89 -92 -93 -92 -90 -86 -79 -66 -46 -42 -48 -57 -60 -57 -54 -53 -53 -55 -58 -60 -63 -63 -61 -60 -63 -69 -78 -84 -84 -81 -77 -76 -75 -71 -65 -60 -64 -74 -84 -93 -99 -104 -106 -105 -102 -98 -95 -95 -96 -99 -102 -103 -100 -94 -88 -82 -77 -75 -75 -77 -82 -88 -94 -98 -99 -100 -102 -103 -104 -105 -106 -106 -99 -85 -73 -68 -71 -80 -89 -98 -105 -110 -113 -116 -119 -122 -125 -125 -125 -125 -125 -126 -128 -129 -130 -129 -126 -119 -108 -95 -91 -99 -107 -111 -110 -109 -109 -109 -108 -105 -102 -103 -105 -104 -101 -99 -99 -100 -98 -97 -98 -102 -107 -110 -106 -101 -97 -96 -98 -100 -102 -102 -101 -99 -97 -96 -94 -95 -94 -94 -94 -94 -93 -93 -93 -93 -93 -94 -94 -93 -92 -90 -89 -89 -89 -87 -88 -89 -90 -90 -89 -87 -85 -86 -87 -88 -87 -84 -82 -81 -79 -78 -77 -77 -77 -76 -75 -74 -72 -70 -44 -40 -38 -41 -46 -55 -59 -60 -58 -56 -56 -58 -58 -56 -51 -46 -40 -32 -24 -20 -28 -39 -48 -53 -49 -46 -45 -43 -38 -36 -37 -40 -43 -47 -52 -56 -57 -54 -48 -45 -45 -48 -51 -49 -39 -29 -26 -39 -49 -50 -47 -47 -58 -67 -71 -70 -65 -58 -53 -54 -61 -71 -80 -85 -87 -87 -88 -90 -91 -90 -89 -88 -86 -82 -78 -69 -57 -47 -43 -45 -47 -50 -54 -60 -68 -73 -78 -81 -84 -87 -89 -91 -91 -90 -91 -91 -91 -91 -88 -83 -80 -79 -80 -80 -78 -76 -73 -67 -60 -52 -45 -39 -40 -42 -46 -49 -52 -55 -56 -55 -54 -52 -53 -57 -63 -66 -68 -71 -73 -73 -65 -57 -52 -54 -61 -65 -65 -62 -59 -60 -64 -70 -74 -73 -71 -71 -69 -65 -61 -60 -60 -63 -68 -71 -69 -68 -71 -77 -78 -77 -73 -69 -60 -54 -53 -55 -55 -54 -52 -51 -54 -58 -60 -61 -62 -62 -62 -64 -64 -65 -66 -66 -66 -67 -66 -57 -48 -45 -46 -47 -48 -52 -59 -66 -71 -72 -73 -72 -67 -64 -63 -64 -67 -71 -69 -66 -66 -70 -71 -69 -66 -64 -65 -67 -74 -81 -86 -92 -94 -90 -82 -74 -74 -75 -75 -74 -72 -74 -78 -82 -84 -92 -98 -102 -103 -100 -92 -83 -71 -58 -44 -43 -49 -58 -62 -60 -56 -54 -55 -58 -61 -63 -64 -62 -61 -62 -65 -71 -78 -82 -84 -83 -81 -80 -78 -73 -67 -63 -68 -76 -86 -95 -100 -104 -106 -105 -102 -98 -95 -93 -94 -97 -99 -97 -94 -89 -85 -80 -76 -74 -74 -79 -85 -91 -95 -96 -97 -99 -101 -103 -104 -104 -104 -100 -94 -86 -78 -71 -69 -76 -86 -96 -105 -111 -113 -115 -117 -119 -122 -123 -123 -124 -124 -125 -126 -126 -126 -126 -127 -124 -116 -104 -99 -103 -109 -112 -112 -111 -110 -108 -106 -103 -101 -101 -103 -103 -100 -99 -98 -98 -96 -96 -96 -98 -103 -108 -106 -103 -99 -96 -98 -99 -100 -101 -101 -100 -98 -96 -94 -94 -94 -95 -95 -96 -95 -94 -93 -93 -93 -93 -93 -92 -92 -91 -90 -89 -89 -88 -88 -89 -90 -89 -88 -86 -84 -85 -86 -87 -87 -85 -83 -82 -80 -79 -79 -79 -78 -77 -76 -75 -72 -69 -40 -37 -34 -37 -44 -56 -60 -61 -58 -55 -55 -56 -55 -51 -45 -42 -40 -35 -27 -22 -28 -38 -47 -51 -49 -46 -44 -41 -36 -35 -37 -40 -44 -50 -54 -57 -56 -52 -45 -41 -41 -44 -46 -43 -34 -26 -25 -37 -44 -45 -44 -49 -61 -67 -67 -63 -59 -53 -51 -54 -62 -71 -79 -85 -88 -89 -91 -91 -90 -88 -88 -87 -83 -75 -65 -50 -40 -35 -37 -41 -49 -57 -63 -68 -72 -74 -77 -80 -84 -87 -88 -87 -86 -87 -88 -89 -89 -90 -89 -86 -81 -79 -81 -80 -78 -75 -71 -66 -59 -53 -47 -42 -40 -41 -44 -48 -53 -56 -57 -56 -56 -54 -56 -60 -66 -68 -70 -71 -71 -66 -57 -52 -52 -57 -64 -67 -65 -60 -57 -59 -64 -69 -71 -68 -69 -68 -67 -64 -62 -61 -63 -67 -73 -74 -72 -71 -74 -77 -77 -76 -73 -67 -59 -56 -55 -55 -53 -49 -48 -50 -55 -58 -60 -61 -60 -57 -58 -63 -68 -70 -70 -68 -69 -69 -67 -53 -46 -45 -48 -49 -51 -57 -63 -69 -69 -67 -66 -64 -58 -59 -62 -65 -69 -73 -70 -68 -68 -72 -72 -70 -67 -64 -66 -72 -80 -87 -92 -98 -97 -90 -81 -75 -78 -80 -80 -76 -75 -77 -81 -87 -91 -99 -106 -108 -107 -101 -88 -74 -61 -52 -49 -50 -54 -58 -59 -57 -56 -56 -59 -62 -64 -65 -66 -65 -64 -64 -68 -73 -78 -81 -81 -80 -79 -81 -81 -79 -74 -70 -72 -78 -86 -94 -99 -103 -105 -104 -101 -97 -94 -93 -93 -94 -92 -90 -88 -87 -84 -80 -75 -72 -73 -80 -86 -90 -92 -93 -95 -98 -101 -103 -103 -102 -99 -93 -88 -88 -86 -81 -75 -76 -84 -94 -104 -110 -113 -115 -116 -117 -119 -120 -121 -122 -123 -124 -124 -124 -123 -124 -127 -128 -126 -120 -117 -117 -117 -115 -113 -112 -111 -109 -106 -101 -99 -100 -103 -105 -103 -100 -97 -95 -94 -94 -94 -96 -101 -106 -107 -104 -100 -99 -99 -99 -99 -99 -101 -101 -100 -98 -95 -95 -95 -95 -96 -96 -96 -95 -94 -93 -93 -93 -92 -92 -91 -90 -90 -90 -89 -89 -89 -89 -88 -87 -86 -86 -85 -85 -85 -86 -86 -86 -85 -84 -82 -81 -81 -80 -80 -78 -77 -75 -71 -69 -36 -35 -34 -37 -46 -57 -60 -60 -58 -54 -53 -53 -52 -48 -42 -40 -40 -37 -30 -25 -30 -38 -44 -47 -48 -47 -45 -42 -38 -37 -39 -43 -47 -53 -56 -56 -54 -50 -43 -38 -39 -42 -42 -36 -27 -22 -25 -32 -36 -40 -46 -55 -62 -62 -60 -58 -59 -57 -56 -59 -65 -75 -81 -85 -88 -91 -91 -89 -87 -84 -82 -82 -79 -69 -49 -33 -30 -35 -41 -47 -56 -65 -72 -76 -76 -77 -79 -81 -83 -82 -82 -81 -82 -84 -85 -87 -89 -90 -90 -86 -82 -80 -82 -80 -77 -73 -68 -61 -57 -53 -47 -42 -39 -39 -42 -47 -53 -56 -57 -57 -59 -59 -60 -63 -68 -71 -71 -69 -65 -58 -53 -53 -55 -60 -66 -66 -63 -60 -57 -61 -66 -70 -71 -69 -70 -70 -70 -69 -67 -66 -67 -71 -75 -72 -70 -71 -75 -76 -76 -76 -74 -68 -60 -58 -56 -54 -51 -46 -47 -51 -57 -61 -63 -62 -59 -55 -60 -67 -72 -73 -72 -72 -72 -69 -60 -47 -44 -47 -50 -50 -54 -60 -66 -69 -67 -65 -64 -63 -57 -61 -64 -67 -70 -73 -70 -69 -70 -75 -73 -71 -69 -67 -72 -81 -90 -96 -100 -102 -95 -86 -79 -76 -79 -81 -79 -77 -76 -80 -86 -92 -98 -103 -106 -106 -102 -94 -81 -67 -56 -50 -55 -58 -60 -60 -57 -55 -55 -56 -59 -63 -65 -67 -67 -68 -69 -71 -73 -75 -76 -74 -70 -67 -70 -77 -82 -84 -82 -79 -79 -82 -87 -93 -99 -102 -104 -103 -101 -97 -93 -90 -87 -84 -82 -82 -84 -85 -84 -80 -74 -71 -73 -79 -84 -87 -89 -92 -96 -99 -102 -102 -102 -100 -95 -89 -87 -88 -88 -86 -84 -83 -86 -93 -101 -108 -112 -114 -115 -116 -117 -118 -119 -121 -122 -123 -124 -125 -125 -127 -129 -130 -128 -123 -121 -122 -123 -119 -114 -112 -111 -109 -105 -100 -99 -100 -105 -109 -107 -103 -98 -94 -94 -93 -93 -95 -99 -103 -105 -103 -101 -100 -99 -99 -99 -100 -100 -100 -101 -100 -97 -96 -96 -95 -96 -97 -96 -96 -94 -93 -94 -93 -93 -92 -92 -91 -90 -89 -89 -88 -88 -88 -88 -86 -86 -87 -87 -86 -84 -83 -85 -86 -86 -85 -83 -82 -82 -82 -80 -79 -78 -74 -71 -70 -32 -33 -35 -40 -47 -56 -58 -58 -56 -53 -52 -52 -50 -45 -40 -39 -40 -38 -33 -28 -32 -37 -42 -45 -46 -46 -45 -43 -39 -38 -43 -49 -52 -56 -54 -53 -52 -51 -46 -41 -39 -40 -40 -30 -22 -20 -25 -29 -32 -37 -44 -52 -57 -58 -58 -56 -57 -59 -60 -64 -71 -81 -85 -86 -86 -86 -85 -83 -81 -78 -77 -78 -73 -61 -37 -27 -31 -41 -51 -58 -65 -69 -72 -74 -75 -77 -78 -79 -79 -79 -79 -79 -80 -84 -86 -88 -88 -87 -86 -84 -83 -82 -81 -77 -73 -69 -65 -59 -54 -49 -45 -42 -39 -39 -41 -47 -52 -55 -57 -60 -62 -63 -64 -66 -68 -71 -68 -63 -58 -54 -53 -54 -58 -62 -66 -64 -61 -59 -59 -64 -69 -73 -74 -74 -75 -75 -75 -74 -70 -67 -67 -69 -68 -65 -66 -70 -75 -77 -77 -77 -75 -69 -61 -57 -55 -53 -50 -46 -48 -53 -60 -65 -66 -64 -60 -57 -65 -71 -73 -72 -71 -71 -69 -64 -54 -46 -45 -47 -49 -52 -57 -63 -68 -71 -69 -70 -70 -67 -62 -64 -66 -68 -70 -72 -72 -71 -73 -77 -74 -72 -71 -72 -81 -91 -98 -102 -102 -98 -88 -81 -79 -79 -80 -80 -78 -76 -79 -85 -91 -96 -99 -100 -98 -94 -89 -86 -79 -68 -56 -50 -56 -60 -63 -64 -60 -58 -56 -55 -57 -60 -63 -65 -67 -69 -74 -77 -77 -74 -71 -65 -60 -59 -65 -73 -80 -84 -86 -86 -87 -89 -92 -96 -100 -103 -104 -103 -99 -93 -87 -82 -79 -77 -77 -79 -82 -82 -81 -78 -73 -69 -74 -79 -84 -87 -91 -95 -98 -100 -100 -100 -100 -97 -93 -88 -88 -87 -86 -85 -84 -83 -85 -89 -96 -103 -109 -112 -114 -115 -116 -117 -119 -120 -122 -123 -125 -126 -126 -127 -129 -130 -128 -122 -119 -120 -123 -120 -114 -110 -108 -108 -105 -99 -97 -100 -107 -110 -109 -106 -101 -95 -94 -93 -93 -94 -96 -99 -100 -100 -101 -101 -99 -97 -98 -99 -99 -100 -102 -101 -100 -98 -96 -96 -96 -97 -97 -96 -95 -95 -94 -94 -93 -93 -93 -92 -91 -89 -89 -88 -88 -88 -87 -86 -87 -88 -87 -85 -83 -82 -83 -85 -86 -85 -83 -83 -83 -82 -81 -79 -77 -74 -72 -72 -30 -32 -35 -40 -46 -52 -55 -55 -53 -52 -53 -52 -48 -43 -38 -38 -39 -38 -36 -30 -31 -36 -41 -45 -46 -45 -43 -40 -36 -38 -45 -52 -56 -54 -50 -49 -50 -49 -50 -50 -46 -40 -34 -26 -23 -25 -29 -33 -36 -40 -46 -52 -55 -56 -57 -58 -60 -63 -66 -71 -76 -80 -80 -79 -78 -78 -78 -77 -76 -75 -75 -75 -67 -50 -28 -25 -34 -47 -57 -63 -65 -66 -67 -67 -70 -73 -76 -78 -79 -78 -78 -79 -82 -84 -85 -84 -84 -83 -83 -83 -83 -81 -78 -73 -67 -63 -60 -56 -52 -48 -45 -41 -39 -39 -41 -47 -52 -56 -59 -62 -65 -67 -67 -68 -68 -68 -62 -57 -55 -55 -55 -57 -60 -64 -65 -63 -60 -60 -63 -68 -73 -75 -75 -76 -76 -76 -74 -70 -63 -61 -61 -62 -60 -61 -67 -73 -78 -79 -78 -76 -72 -64 -58 -54 -52 -51 -51 -49 -51 -56 -62 -68 -69 -66 -62 -62 -68 -73 -74 -71 -68 -65 -61 -57 -50 -47 -46 -47 -50 -55 -61 -67 -71 -71 -72 -74 -74 -71 -67 -68 -68 -68 -68 -73 -74 -74 -74 -77 -74 -73 -74 -80 -90 -97 -102 -103 -97 -88 -81 -79 -80 -81 -81 -80 -79 -80 -84 -88 -91 -93 -93 -90 -87 -85 -84 -85 -81 -72 -59 -51 -56 -62 -67 -70 -69 -64 -59 -56 -54 -55 -59 -63 -67 -71 -79 -84 -85 -80 -73 -64 -60 -61 -67 -71 -73 -74 -77 -85 -90 -94 -97 -100 -102 -104 -103 -99 -93 -86 -79 -75 -74 -75 -76 -78 -80 -80 -79 -76 -73 -72 -78 -84 -89 -92 -96 -98 -100 -99 -98 -98 -98 -96 -93 -90 -89 -88 -86 -83 -81 -80 -82 -86 -92 -98 -103 -108 -112 -114 -115 -117 -119 -120 -122 -123 -124 -126 -128 -129 -130 -130 -128 -122 -119 -118 -120 -119 -112 -107 -105 -107 -103 -97 -94 -98 -106 -110 -109 -106 -100 -94 -92 -92 -93 -94 -95 -95 -95 -96 -99 -100 -99 -97 -97 -99 -99 -100 -102 -102 -101 -99 -97 -96 -96 -97 -98 -98 -96 -95 -94 -93 -92 -93 -93 -93 -91 -91 -90 -89 -89 -88 -88 -88 -88 -89 -87 -85 -83 -82 -83 -85 -85 -84 -83 -84 -83 -81 -80 -79 -76 -75 -74 -75 -28 -29 -33 -39 -44 -48 -51 -51 -51 -52 -54 -53 -47 -41 -37 -38 -39 -40 -39 -33 -32 -36 -41 -45 -47 -47 -48 -46 -39 -39 -45 -51 -52 -48 -46 -46 -46 -43 -44 -49 -50 -43 -31 -26 -28 -33 -36 -38 -41 -44 -47 -51 -54 -56 -58 -61 -65 -68 -70 -73 -75 -74 -72 -71 -70 -72 -74 -74 -74 -74 -74 -69 -56 -39 -23 -28 -38 -50 -58 -64 -65 -65 -65 -64 -67 -71 -75 -78 -80 -80 -80 -80 -82 -81 -80 -80 -80 -81 -81 -82 -81 -78 -73 -66 -60 -57 -56 -53 -50 -48 -46 -42 -39 -39 -42 -48 -53 -59 -64 -67 -68 -68 -68 -66 -66 -62 -57 -54 -55 -57 -59 -61 -64 -67 -66 -63 -63 -65 -69 -71 -72 -72 -72 -71 -70 -67 -61 -55 -54 -56 -59 -60 -61 -66 -73 -78 -80 -80 -78 -72 -64 -53 -51 -51 -52 -52 -50 -51 -55 -60 -64 -68 -68 -66 -64 -66 -70 -73 -73 -69 -63 -56 -52 -50 -51 -51 -49 -49 -53 -60 -66 -70 -72 -72 -73 -74 -74 -72 -68 -69 -68 -68 -69 -72 -75 -77 -76 -75 -73 -76 -81 -87 -91 -98 -102 -99 -88 -81 -78 -79 -82 -83 -84 -84 -85 -88 -88 -89 -89 -88 -87 -86 -86 -86 -88 -89 -84 -74 -62 -57 -60 -64 -68 -70 -70 -68 -64 -60 -55 -54 -56 -61 -67 -74 -83 -88 -90 -87 -80 -71 -65 -64 -67 -67 -67 -67 -72 -80 -88 -95 -99 -102 -104 -103 -99 -92 -86 -80 -76 -74 -75 -75 -76 -77 -79 -79 -78 -76 -76 -79 -86 -90 -93 -94 -96 -99 -100 -100 -98 -98 -98 -97 -95 -92 -90 -88 -86 -82 -80 -79 -81 -83 -87 -92 -97 -103 -108 -112 -114 -116 -118 -120 -121 -122 -124 -127 -130 -130 -130 -128 -126 -122 -118 -117 -118 -118 -111 -105 -103 -105 -100 -94 -91 -95 -104 -107 -105 -101 -96 -91 -89 -89 -91 -92 -93 -93 -92 -93 -96 -98 -99 -98 -98 -98 -98 -99 -102 -102 -102 -100 -98 -96 -97 -98 -99 -98 -97 -95 -93 -93 -93 -93 -93 -93 -92 -91 -90 -89 -89 -89 -89 -88 -88 -88 -87 -85 -84 -83 -84 -84 -84 -83 -82 -83 -82 -80 -79 -78 -76 -76 -77 -77 -25 -26 -31 -36 -42 -45 -48 -50 -52 -54 -56 -51 -43 -37 -35 -37 -41 -43 -43 -40 -36 -37 -41 -46 -49 -50 -53 -53 -49 -49 -50 -50 -48 -45 -44 -45 -43 -37 -36 -41 -43 -39 -28 -28 -36 -44 -45 -44 -45 -47 -49 -52 -55 -57 -60 -63 -66 -69 -71 -72 -72 -69 -66 -64 -66 -69 -72 -74 -74 -73 -69 -58 -45 -34 -31 -38 -45 -52 -58 -63 -68 -69 -68 -66 -68 -72 -76 -78 -78 -77 -77 -78 -78 -76 -76 -76 -78 -80 -81 -80 -78 -73 -65 -57 -52 -52 -54 -52 -50 -48 -47 -43 -39 -39 -43 -50 -57 -63 -67 -69 -68 -66 -65 -64 -63 -59 -56 -55 -57 -61 -64 -67 -69 -70 -68 -66 -67 -70 -72 -71 -70 -68 -66 -65 -62 -57 -52 -50 -55 -60 -63 -64 -66 -71 -76 -80 -81 -78 -72 -62 -51 -44 -46 -49 -52 -52 -51 -54 -61 -66 -68 -65 -63 -62 -65 -68 -72 -73 -71 -65 -56 -49 -46 -48 -55 -55 -52 -51 -57 -65 -70 -72 -73 -72 -72 -72 -72 -71 -69 -70 -70 -69 -68 -73 -79 -81 -80 -74 -75 -80 -85 -89 -92 -98 -100 -95 -84 -79 -79 -81 -83 -86 -88 -91 -93 -96 -93 -90 -88 -87 -87 -89 -91 -92 -91 -91 -85 -75 -62 -60 -64 -68 -69 -68 -70 -70 -69 -66 -61 -58 -58 -62 -70 -78 -85 -89 -91 -90 -87 -80 -71 -64 -65 -66 -69 -73 -78 -85 -92 -98 -101 -103 -104 -101 -95 -88 -81 -76 -75 -76 -77 -77 -77 -78 -80 -81 -80 -79 -80 -84 -88 -91 -93 -96 -99 -101 -101 -100 -99 -98 -97 -95 -94 -92 -90 -88 -85 -81 -79 -79 -79 -80 -84 -88 -92 -96 -101 -106 -111 -115 -118 -119 -120 -122 -125 -129 -131 -131 -129 -126 -124 -121 -118 -116 -116 -116 -110 -103 -98 -100 -96 -92 -89 -93 -100 -101 -98 -95 -92 -89 -88 -88 -89 -90 -90 -89 -87 -89 -92 -95 -97 -98 -99 -97 -97 -98 -100 -102 -102 -100 -98 -97 -97 -97 -98 -97 -96 -95 -94 -93 -93 -93 -94 -94 -93 -92 -90 -90 -89 -90 -89 -89 -88 -88 -87 -86 -85 -84 -85 -84 -83 -82 -83 -82 -81 -79 -77 -77 -78 -79 -79 -78 -20 -24 -29 -34 -38 -42 -47 -52 -56 -57 -57 -47 -37 -31 -32 -38 -42 -45 -45 -43 -38 -37 -40 -45 -48 -50 -54 -58 -59 -61 -60 -55 -47 -40 -40 -44 -44 -37 -29 -30 -32 -32 -26 -30 -42 -51 -53 -47 -45 -47 -50 -53 -56 -58 -60 -63 -66 -67 -69 -70 -70 -66 -63 -63 -65 -70 -73 -75 -74 -69 -59 -46 -38 -38 -47 -54 -58 -60 -63 -68 -74 -76 -75 -70 -72 -77 -80 -77 -70 -69 -70 -71 -72 -72 -74 -76 -77 -78 -79 -78 -74 -66 -55 -48 -47 -50 -54 -54 -52 -50 -47 -43 -40 -41 -46 -53 -60 -64 -66 -66 -64 -62 -62 -63 -63 -60 -58 -59 -62 -67 -70 -72 -72 -73 -72 -71 -72 -74 -74 -72 -69 -67 -64 -62 -60 -56 -54 -55 -61 -65 -66 -67 -70 -75 -80 -82 -81 -76 -66 -56 -47 -42 -44 -49 -53 -54 -56 -61 -66 -68 -66 -62 -60 -60 -64 -72 -77 -74 -67 -57 -49 -47 -48 -52 -56 -55 -53 -54 -62 -70 -74 -74 -73 -72 -72 -70 -68 -67 -69 -73 -75 -74 -71 -76 -81 -84 -82 -78 -81 -85 -88 -90 -91 -94 -95 -91 -85 -81 -79 -80 -84 -91 -96 -99 -101 -102 -98 -94 -91 -89 -91 -93 -94 -93 -91 -91 -84 -72 -55 -51 -59 -68 -72 -70 -72 -72 -70 -67 -65 -63 -62 -64 -71 -78 -84 -87 -89 -90 -91 -87 -79 -70 -69 -71 -77 -83 -89 -94 -98 -102 -103 -104 -102 -96 -89 -83 -77 -75 -76 -78 -78 -77 -78 -80 -83 -85 -85 -83 -83 -87 -90 -93 -96 -99 -101 -102 -102 -100 -98 -96 -94 -92 -91 -90 -89 -87 -83 -79 -78 -78 -78 -79 -82 -85 -88 -90 -94 -101 -108 -113 -116 -118 -119 -122 -125 -129 -131 -130 -127 -124 -122 -120 -118 -116 -115 -115 -111 -105 -98 -96 -92 -89 -87 -91 -94 -94 -93 -93 -92 -89 -88 -88 -90 -92 -91 -88 -84 -86 -88 -91 -94 -96 -96 -95 -95 -95 -97 -100 -101 -100 -98 -96 -96 -96 -97 -97 -96 -94 -92 -92 -93 -94 -94 -94 -93 -91 -90 -89 -89 -90 -89 -89 -88 -88 -88 -87 -87 -86 -86 -85 -83 -83 -84 -82 -80 -79 -78 -79 -80 -82 -81 -77 -19 -22 -25 -29 -35 -41 -47 -53 -57 -58 -55 -45 -33 -28 -30 -39 -44 -45 -44 -42 -37 -35 -37 -41 -45 -49 -55 -61 -64 -65 -64 -58 -48 -35 -36 -42 -46 -41 -27 -23 -25 -30 -31 -37 -48 -57 -59 -52 -44 -44 -49 -53 -54 -56 -59 -63 -66 -65 -66 -68 -68 -65 -63 -64 -68 -74 -76 -76 -71 -61 -47 -38 -38 -47 -60 -69 -75 -77 -77 -79 -82 -83 -82 -80 -81 -83 -81 -73 -63 -62 -64 -66 -68 -70 -73 -75 -77 -75 -75 -74 -70 -60 -48 -43 -45 -50 -55 -57 -55 -52 -47 -44 -42 -44 -49 -55 -59 -61 -62 -62 -62 -63 -64 -66 -66 -65 -63 -65 -68 -72 -74 -75 -74 -74 -74 -74 -75 -76 -76 -73 -70 -67 -65 -64 -63 -62 -62 -62 -66 -69 -70 -70 -74 -80 -84 -84 -79 -70 -61 -54 -48 -43 -44 -48 -54 -60 -63 -67 -70 -70 -67 -65 -65 -69 -75 -80 -80 -72 -61 -52 -48 -51 -55 -57 -54 -51 -53 -60 -70 -77 -79 -78 -75 -74 -73 -70 -65 -63 -70 -78 -82 -82 -77 -79 -81 -83 -83 -82 -84 -86 -87 -87 -89 -93 -94 -91 -88 -82 -80 -84 -93 -99 -103 -106 -108 -106 -101 -97 -94 -93 -93 -92 -91 -89 -88 -89 -83 -69 -49 -46 -56 -68 -74 -74 -74 -73 -70 -67 -65 -63 -63 -64 -67 -74 -81 -87 -89 -91 -93 -93 -91 -85 -81 -81 -85 -89 -95 -99 -101 -103 -103 -103 -99 -92 -84 -80 -77 -76 -78 -79 -79 -79 -81 -85 -88 -88 -87 -85 -84 -87 -92 -96 -99 -102 -103 -102 -101 -99 -97 -94 -91 -89 -89 -89 -88 -85 -81 -78 -77 -77 -78 -79 -81 -83 -83 -84 -89 -97 -105 -111 -115 -117 -119 -121 -125 -130 -132 -130 -126 -122 -121 -120 -119 -116 -114 -114 -113 -110 -105 -100 -93 -88 -84 -87 -88 -89 -90 -94 -93 -91 -89 -89 -92 -93 -91 -87 -83 -85 -87 -88 -88 -89 -92 -92 -91 -91 -93 -96 -99 -99 -97 -96 -95 -95 -97 -97 -96 -95 -93 -92 -93 -93 -94 -93 -92 -91 -90 -89 -89 -89 -90 -89 -90 -90 -89 -88 -87 -87 -87 -86 -84 -84 -84 -83 -81 -79 -80 -81 -83 -82 -80 -77 -17 -21 -24 -30 -37 -44 -50 -56 -58 -57 -52 -44 -33 -28 -30 -41 -46 -46 -43 -40 -37 -35 -35 -37 -40 -47 -56 -63 -65 -62 -60 -54 -45 -34 -34 -41 -46 -44 -30 -22 -24 -34 -45 -54 -62 -68 -71 -65 -53 -47 -48 -51 -52 -55 -59 -63 -66 -64 -64 -66 -68 -66 -65 -66 -70 -74 -74 -70 -61 -48 -33 -32 -40 -54 -67 -73 -76 -78 -78 -76 -77 -79 -81 -82 -82 -81 -76 -67 -59 -59 -60 -62 -64 -66 -70 -74 -75 -73 -72 -71 -67 -56 -45 -42 -44 -50 -55 -58 -57 -54 -49 -45 -43 -45 -49 -53 -55 -57 -60 -63 -66 -68 -69 -71 -72 -71 -70 -71 -73 -75 -75 -75 -74 -74 -74 -75 -76 -76 -75 -73 -70 -68 -68 -67 -67 -68 -68 -68 -69 -71 -73 -75 -79 -84 -85 -82 -73 -61 -55 -51 -48 -43 -43 -48 -56 -64 -67 -69 -70 -70 -69 -70 -72 -75 -80 -82 -77 -66 -54 -52 -56 -59 -59 -55 -48 -49 -56 -69 -81 -85 -85 -82 -78 -77 -76 -70 -64 -64 -74 -83 -88 -89 -84 -80 -80 -81 -81 -81 -82 -84 -86 -87 -90 -94 -95 -89 -86 -82 -84 -91 -101 -105 -107 -107 -105 -101 -99 -97 -97 -95 -91 -86 -83 -82 -84 -85 -79 -67 -50 -50 -59 -69 -75 -75 -75 -74 -73 -71 -68 -66 -64 -64 -67 -75 -83 -89 -91 -93 -96 -100 -101 -98 -94 -91 -90 -91 -95 -98 -99 -100 -100 -99 -94 -88 -82 -78 -77 -77 -78 -79 -81 -84 -87 -90 -89 -87 -85 -84 -85 -89 -94 -98 -101 -102 -102 -101 -100 -99 -96 -92 -89 -87 -87 -88 -88 -86 -82 -78 -77 -77 -78 -80 -80 -79 -78 -80 -87 -95 -103 -110 -115 -116 -118 -120 -125 -129 -130 -128 -125 -122 -121 -121 -120 -117 -114 -113 -113 -113 -112 -107 -99 -91 -84 -85 -87 -89 -92 -95 -93 -92 -91 -91 -92 -92 -88 -84 -82 -86 -88 -87 -85 -86 -88 -88 -88 -88 -91 -94 -96 -98 -97 -95 -94 -94 -97 -96 -95 -94 -92 -92 -94 -94 -92 -91 -90 -90 -89 -89 -89 -89 -90 -91 -92 -92 -91 -89 -88 -88 -87 -86 -86 -86 -86 -83 -81 -81 -82 -83 -83 -82 -80 -78 -16 -20 -25 -33 -40 -46 -53 -57 -58 -56 -52 -45 -36 -32 -33 -43 -49 -50 -47 -42 -41 -38 -36 -35 -38 -44 -54 -62 -64 -59 -51 -43 -37 -32 -34 -40 -44 -43 -33 -25 -27 -39 -57 -66 -73 -78 -83 -85 -78 -67 -56 -49 -48 -53 -59 -64 -68 -67 -66 -66 -70 -71 -72 -74 -75 -74 -68 -60 -50 -39 -31 -35 -44 -56 -67 -70 -68 -66 -65 -67 -70 -72 -72 -72 -76 -77 -72 -62 -56 -54 -54 -55 -59 -64 -71 -74 -74 -69 -69 -69 -65 -57 -47 -42 -44 -49 -55 -58 -57 -55 -51 -47 -46 -47 -48 -50 -54 -60 -65 -70 -73 -74 -74 -74 -76 -76 -74 -73 -73 -74 -74 -74 -74 -73 -73 -74 -75 -75 -75 -72 -70 -69 -69 -68 -69 -71 -71 -69 -71 -73 -76 -79 -82 -84 -83 -75 -61 -53 -51 -49 -46 -42 -43 -50 -59 -67 -69 -69 -69 -69 -69 -72 -76 -79 -80 -80 -71 -59 -50 -56 -61 -63 -60 -56 -52 -56 -67 -81 -90 -90 -88 -86 -82 -80 -77 -72 -69 -74 -82 -88 -92 -94 -89 -81 -77 -77 -77 -77 -79 -83 -89 -90 -95 -97 -94 -85 -82 -83 -88 -97 -104 -105 -103 -100 -96 -96 -96 -96 -97 -96 -89 -83 -80 -81 -83 -80 -71 -60 -52 -57 -64 -70 -76 -77 -76 -75 -75 -73 -69 -66 -64 -64 -70 -79 -87 -92 -94 -95 -98 -102 -105 -103 -99 -96 -94 -93 -92 -93 -94 -96 -96 -94 -89 -84 -78 -75 -76 -78 -80 -81 -84 -87 -89 -89 -87 -85 -84 -85 -88 -92 -96 -98 -99 -100 -100 -100 -99 -98 -95 -91 -89 -87 -86 -87 -87 -87 -84 -80 -78 -77 -78 -76 -75 -74 -75 -78 -85 -93 -102 -110 -114 -116 -117 -120 -124 -128 -130 -128 -125 -123 -123 -123 -123 -119 -115 -113 -112 -113 -113 -111 -106 -99 -92 -91 -91 -92 -93 -96 -96 -96 -95 -92 -89 -87 -85 -83 -84 -87 -88 -86 -83 -85 -87 -87 -85 -83 -86 -90 -94 -97 -97 -94 -93 -94 -96 -95 -94 -92 -91 -92 -92 -91 -90 -89 -89 -88 -88 -89 -88 -88 -89 -91 -93 -93 -92 -91 -89 -88 -88 -87 -87 -88 -87 -85 -83 -84 -85 -84 -82 -80 -79 -79 -13 -19 -25 -32 -39 -46 -53 -54 -55 -55 -53 -47 -41 -38 -38 -45 -54 -58 -57 -53 -52 -49 -44 -40 -39 -41 -50 -59 -64 -60 -49 -37 -28 -26 -32 -36 -35 -31 -26 -23 -26 -35 -49 -60 -70 -76 -80 -82 -84 -82 -74 -59 -49 -50 -55 -60 -66 -69 -70 -70 -71 -72 -73 -73 -72 -67 -58 -49 -42 -38 -41 -49 -57 -66 -73 -77 -76 -73 -71 -72 -73 -73 -71 -72 -75 -71 -63 -53 -49 -50 -51 -55 -61 -66 -73 -75 -73 -68 -67 -67 -65 -60 -51 -44 -43 -47 -53 -55 -56 -55 -52 -48 -47 -48 -50 -53 -59 -65 -71 -74 -76 -76 -76 -76 -77 -75 -73 -72 -71 -72 -73 -74 -75 -76 -73 -72 -72 -73 -74 -71 -70 -69 -69 -68 -69 -70 -71 -70 -71 -75 -79 -81 -81 -80 -74 -62 -50 -49 -50 -49 -45 -41 -44 -52 -62 -70 -71 -70 -69 -67 -66 -72 -76 -78 -77 -75 -65 -55 -51 -60 -64 -63 -59 -57 -58 -68 -80 -90 -93 -92 -90 -87 -84 -83 -81 -78 -78 -87 -91 -93 -93 -94 -89 -79 -74 -73 -72 -74 -79 -86 -93 -96 -101 -99 -91 -82 -81 -86 -92 -99 -102 -101 -98 -95 -94 -93 -93 -94 -96 -97 -92 -87 -83 -83 -80 -71 -59 -49 -51 -60 -66 -72 -78 -80 -78 -76 -75 -74 -69 -65 -63 -64 -73 -82 -89 -93 -95 -96 -98 -102 -107 -108 -104 -98 -92 -88 -86 -89 -92 -94 -92 -88 -84 -79 -73 -73 -76 -79 -81 -83 -85 -87 -87 -86 -85 -85 -86 -89 -92 -95 -97 -97 -98 -99 -99 -100 -99 -97 -94 -91 -88 -86 -85 -85 -85 -85 -83 -80 -78 -75 -73 -70 -70 -71 -74 -77 -83 -90 -99 -108 -112 -114 -117 -121 -124 -127 -129 -129 -126 -124 -123 -124 -123 -119 -114 -111 -110 -111 -112 -111 -109 -107 -103 -98 -94 -93 -97 -101 -102 -99 -94 -88 -86 -85 -86 -86 -87 -88 -88 -85 -82 -84 -87 -87 -84 -81 -82 -86 -91 -94 -94 -93 -93 -93 -94 -93 -91 -91 -91 -91 -90 -89 -88 -88 -88 -88 -88 -88 -88 -88 -89 -90 -92 -93 -93 -92 -91 -89 -88 -88 -88 -89 -88 -86 -86 -86 -86 -84 -81 -80 -79 -80 -12 -21 -28 -33 -39 -45 -51 -51 -52 -53 -54 -50 -46 -43 -43 -46 -56 -64 -69 -70 -71 -67 -60 -53 -47 -44 -49 -57 -63 -63 -55 -42 -28 -22 -28 -29 -25 -19 -18 -22 -29 -39 -49 -59 -64 -66 -66 -69 -75 -79 -79 -71 -59 -54 -54 -58 -65 -69 -69 -68 -67 -65 -66 -67 -65 -60 -49 -40 -36 -40 -50 -59 -65 -68 -70 -74 -77 -78 -77 -75 -75 -74 -74 -74 -72 -62 -50 -42 -44 -49 -54 -59 -66 -70 -75 -76 -73 -67 -64 -64 -65 -62 -54 -45 -42 -44 -50 -53 -56 -56 -53 -50 -52 -54 -57 -59 -64 -69 -73 -75 -77 -77 -76 -76 -75 -74 -73 -71 -71 -71 -74 -75 -75 -75 -72 -70 -69 -70 -71 -68 -67 -66 -67 -67 -68 -69 -70 -71 -73 -76 -80 -82 -80 -71 -59 -47 -44 -48 -51 -50 -46 -43 -46 -54 -63 -73 -75 -72 -68 -64 -65 -71 -74 -75 -73 -69 -60 -54 -54 -63 -65 -62 -59 -61 -70 -81 -91 -96 -96 -95 -93 -89 -86 -85 -81 -81 -84 -93 -94 -93 -92 -92 -86 -76 -71 -71 -73 -78 -85 -91 -97 -102 -105 -99 -88 -82 -84 -90 -97 -100 -101 -100 -99 -98 -96 -94 -92 -93 -95 -98 -96 -92 -86 -81 -71 -60 -52 -52 -62 -68 -71 -74 -81 -84 -82 -78 -74 -72 -70 -67 -65 -67 -76 -85 -91 -94 -94 -94 -97 -101 -107 -108 -106 -102 -98 -91 -88 -89 -93 -92 -87 -82 -77 -73 -69 -71 -75 -78 -80 -83 -84 -84 -84 -85 -86 -88 -90 -93 -95 -97 -98 -99 -100 -101 -101 -99 -97 -94 -91 -88 -86 -85 -85 -84 -82 -81 -80 -78 -76 -72 -68 -66 -68 -71 -75 -78 -81 -87 -95 -102 -106 -111 -117 -122 -124 -127 -129 -129 -127 -125 -123 -122 -120 -116 -112 -109 -108 -109 -109 -109 -109 -109 -110 -103 -97 -94 -97 -102 -103 -101 -96 -89 -87 -88 -90 -91 -90 -89 -88 -85 -81 -83 -86 -86 -83 -81 -82 -85 -89 -91 -91 -91 -91 -92 -91 -90 -89 -89 -89 -88 -87 -86 -87 -87 -88 -88 -88 -87 -87 -88 -88 -89 -91 -93 -94 -93 -92 -91 -90 -90 -90 -89 -88 -88 -88 -88 -87 -84 -82 -81 -81 -83 -14 -27 -35 -39 -42 -47 -52 -52 -52 -53 -57 -56 -54 -53 -54 -53 -56 -63 -68 -70 -70 -66 -60 -55 -50 -49 -51 -55 -60 -63 -59 -47 -33 -20 -23 -24 -21 -14 -15 -24 -35 -45 -53 -57 -57 -57 -59 -64 -68 -73 -76 -74 -67 -61 -59 -60 -64 -66 -65 -62 -59 -58 -60 -60 -59 -52 -40 -32 -31 -39 -51 -60 -62 -61 -60 -63 -69 -73 -73 -69 -68 -69 -72 -75 -65 -50 -38 -35 -43 -52 -59 -65 -70 -74 -75 -74 -70 -63 -61 -62 -63 -61 -53 -44 -40 -42 -48 -53 -56 -56 -55 -54 -58 -62 -65 -67 -68 -70 -73 -75 -77 -76 -75 -74 -74 -74 -74 -72 -70 -71 -73 -74 -73 -73 -72 -69 -67 -66 -65 -63 -62 -63 -64 -65 -66 -67 -69 -71 -73 -76 -78 -78 -72 -60 -49 -43 -44 -48 -50 -49 -46 -43 -48 -57 -68 -76 -72 -67 -62 -60 -64 -71 -73 -71 -70 -64 -56 -53 -56 -64 -65 -65 -67 -74 -84 -93 -99 -100 -99 -98 -95 -91 -88 -86 -83 -83 -89 -95 -94 -92 -90 -89 -83 -74 -70 -72 -77 -84 -91 -98 -104 -108 -105 -96 -86 -84 -89 -95 -101 -102 -103 -104 -105 -103 -99 -96 -95 -95 -95 -97 -95 -92 -86 -78 -64 -55 -53 -60 -69 -73 -75 -77 -83 -88 -86 -81 -75 -71 -70 -69 -70 -75 -82 -88 -92 -94 -92 -93 -96 -101 -106 -106 -105 -103 -100 -95 -92 -93 -94 -91 -83 -77 -72 -69 -68 -71 -75 -78 -80 -81 -82 -83 -83 -86 -90 -92 -94 -95 -98 -100 -101 -101 -100 -100 -99 -97 -94 -91 -87 -85 -84 -84 -83 -81 -79 -77 -77 -76 -74 -70 -65 -65 -68 -72 -75 -78 -82 -87 -94 -100 -104 -109 -115 -121 -125 -128 -129 -129 -127 -125 -123 -120 -117 -113 -110 -108 -108 -108 -108 -107 -107 -110 -112 -107 -100 -95 -96 -100 -101 -101 -99 -94 -91 -90 -91 -91 -90 -89 -87 -84 -80 -81 -83 -84 -81 -81 -82 -85 -88 -88 -88 -89 -90 -91 -90 -89 -87 -86 -86 -85 -85 -85 -86 -86 -87 -87 -87 -87 -87 -87 -88 -89 -90 -92 -93 -93 -93 -92 -92 -91 -91 -89 -89 -90 -91 -90 -87 -84 -83 -84 -84 -85 -18 -33 -40 -42 -45 -49 -55 -57 -57 -57 -59 -62 -64 -66 -67 -68 -67 -66 -65 -64 -63 -60 -53 -47 -47 -51 -51 -50 -51 -54 -51 -43 -32 -21 -21 -21 -18 -15 -18 -30 -41 -50 -56 -56 -54 -54 -57 -63 -67 -69 -70 -69 -67 -64 -62 -62 -63 -64 -61 -56 -51 -51 -55 -56 -54 -47 -36 -31 -30 -35 -44 -51 -53 -52 -51 -55 -60 -63 -60 -55 -55 -61 -68 -72 -57 -40 -31 -34 -46 -56 -64 -69 -72 -74 -72 -69 -64 -59 -58 -60 -60 -57 -50 -42 -38 -40 -48 -54 -57 -58 -58 -59 -63 -68 -71 -72 -71 -71 -73 -76 -76 -75 -73 -73 -73 -74 -74 -73 -70 -70 -72 -73 -72 -72 -71 -69 -66 -62 -59 -58 -57 -58 -60 -62 -63 -65 -67 -70 -72 -73 -73 -69 -61 -53 -48 -47 -48 -49 -48 -46 -42 -44 -52 -62 -69 -67 -62 -58 -57 -59 -66 -72 -73 -71 -72 -63 -56 -53 -56 -63 -69 -75 -81 -89 -97 -101 -103 -103 -101 -98 -94 -91 -89 -87 -85 -84 -87 -89 -88 -88 -88 -89 -83 -74 -70 -74 -83 -90 -96 -100 -105 -105 -100 -92 -86 -88 -95 -101 -105 -107 -107 -108 -107 -104 -100 -98 -97 -96 -93 -90 -88 -85 -83 -77 -64 -58 -59 -66 -72 -75 -77 -80 -85 -90 -91 -87 -78 -73 -71 -72 -77 -85 -89 -92 -93 -93 -93 -94 -97 -101 -104 -105 -105 -102 -97 -92 -91 -92 -91 -88 -82 -75 -70 -67 -70 -73 -76 -79 -80 -79 -80 -82 -86 -90 -94 -95 -96 -96 -99 -101 -102 -100 -98 -97 -95 -92 -90 -88 -85 -83 -82 -82 -80 -78 -76 -75 -76 -76 -74 -70 -64 -64 -67 -72 -76 -79 -84 -88 -92 -96 -99 -104 -111 -118 -124 -128 -129 -129 -127 -125 -122 -118 -113 -110 -109 -108 -108 -108 -108 -107 -107 -109 -111 -107 -100 -96 -96 -97 -99 -100 -101 -99 -96 -94 -93 -92 -90 -88 -87 -84 -80 -80 -81 -81 -78 -79 -82 -85 -86 -85 -85 -87 -89 -90 -89 -87 -86 -86 -85 -84 -85 -86 -85 -85 -85 -86 -87 -86 -87 -87 -88 -89 -89 -89 -89 -90 -92 -92 -92 -92 -91 -90 -90 -91 -91 -91 -88 -86 -86 -86 -87 -88 -18 -28 -34 -41 -48 -54 -58 -61 -63 -64 -64 -64 -65 -67 -69 -70 -67 -64 -62 -61 -60 -55 -48 -43 -44 -51 -50 -46 -42 -42 -39 -33 -27 -23 -25 -24 -21 -18 -23 -35 -46 -53 -57 -57 -55 -54 -57 -62 -66 -68 -66 -63 -60 -59 -59 -59 -62 -62 -58 -50 -44 -45 -50 -54 -54 -49 -42 -39 -37 -36 -34 -38 -43 -48 -52 -56 -57 -54 -46 -42 -47 -57 -66 -67 -51 -38 -34 -40 -50 -58 -65 -70 -74 -72 -68 -64 -59 -54 -55 -57 -57 -53 -46 -39 -37 -40 -49 -56 -59 -61 -62 -63 -66 -69 -72 -73 -72 -73 -75 -77 -76 -74 -73 -73 -72 -73 -74 -73 -70 -69 -71 -72 -72 -72 -72 -69 -64 -58 -55 -54 -54 -54 -56 -58 -59 -61 -64 -67 -69 -69 -65 -56 -50 -50 -51 -52 -51 -50 -48 -44 -41 -45 -55 -61 -62 -60 -61 -61 -63 -65 -69 -73 -75 -73 -72 -65 -59 -56 -58 -67 -76 -83 -89 -94 -100 -104 -105 -102 -98 -95 -92 -90 -88 -87 -84 -82 -80 -77 -78 -82 -89 -92 -84 -75 -72 -76 -86 -92 -97 -100 -103 -99 -93 -89 -90 -95 -100 -104 -107 -109 -107 -105 -102 -99 -96 -94 -92 -90 -85 -80 -79 -80 -83 -81 -70 -64 -64 -69 -74 -76 -78 -81 -86 -92 -94 -90 -82 -76 -77 -80 -85 -91 -93 -94 -93 -93 -93 -95 -98 -101 -103 -105 -103 -98 -90 -85 -84 -85 -86 -87 -83 -76 -70 -68 -73 -76 -78 -79 -78 -78 -80 -85 -90 -93 -95 -95 -96 -96 -98 -99 -100 -98 -95 -92 -90 -87 -86 -84 -82 -81 -80 -80 -79 -77 -75 -74 -76 -77 -75 -71 -65 -64 -67 -72 -77 -82 -86 -88 -90 -92 -95 -98 -102 -108 -116 -122 -126 -128 -126 -124 -120 -115 -111 -109 -108 -108 -108 -108 -108 -107 -106 -107 -109 -105 -100 -96 -96 -97 -98 -99 -100 -100 -98 -97 -96 -93 -90 -88 -87 -84 -81 -81 -82 -80 -77 -78 -81 -84 -84 -82 -83 -86 -88 -87 -86 -85 -85 -86 -85 -84 -84 -84 -84 -84 -84 -85 -86 -86 -86 -87 -88 -88 -88 -88 -87 -86 -87 -89 -91 -91 -91 -90 -90 -91 -91 -90 -88 -87 -88 -89 -89 -89 -16 -25 -32 -42 -51 -57 -60 -63 -65 -66 -68 -67 -68 -69 -69 -66 -60 -57 -56 -55 -54 -51 -48 -46 -48 -53 -51 -44 -36 -32 -26 -22 -22 -27 -35 -36 -34 -29 -28 -38 -49 -57 -59 -58 -57 -56 -58 -62 -67 -66 -62 -55 -51 -51 -53 -56 -62 -61 -53 -44 -38 -41 -48 -54 -58 -57 -53 -52 -50 -47 -38 -34 -37 -46 -56 -59 -53 -44 -35 -37 -48 -60 -66 -61 -49 -43 -44 -48 -53 -60 -66 -71 -74 -71 -66 -60 -55 -51 -53 -55 -56 -53 -46 -39 -37 -40 -49 -57 -63 -65 -65 -64 -65 -67 -70 -72 -73 -74 -74 -75 -75 -73 -72 -71 -70 -71 -71 -71 -70 -69 -71 -72 -73 -73 -72 -67 -61 -56 -53 -52 -52 -52 -53 -54 -56 -58 -60 -63 -66 -64 -57 -45 -44 -49 -53 -53 -51 -50 -48 -45 -43 -47 -52 -56 -57 -62 -66 -68 -68 -67 -70 -75 -76 -73 -70 -65 -61 -59 -58 -68 -79 -87 -90 -94 -99 -103 -103 -99 -94 -91 -90 -89 -84 -80 -79 -78 -75 -70 -71 -79 -91 -93 -83 -76 -75 -80 -88 -94 -98 -101 -99 -93 -89 -88 -92 -98 -102 -104 -105 -103 -99 -95 -91 -89 -87 -85 -83 -80 -76 -76 -80 -85 -88 -84 -74 -68 -66 -70 -74 -77 -79 -82 -86 -92 -95 -92 -84 -80 -81 -85 -90 -93 -94 -95 -96 -97 -98 -97 -97 -98 -101 -101 -98 -90 -80 -76 -77 -79 -83 -87 -84 -76 -69 -71 -78 -81 -80 -79 -78 -79 -83 -87 -90 -92 -94 -95 -95 -94 -95 -96 -96 -94 -90 -86 -84 -83 -81 -81 -81 -81 -80 -78 -77 -75 -75 -75 -76 -77 -76 -71 -66 -65 -67 -72 -78 -83 -86 -87 -87 -89 -92 -94 -96 -100 -106 -113 -120 -124 -124 -122 -118 -114 -110 -108 -107 -107 -107 -108 -108 -107 -105 -105 -107 -105 -100 -96 -95 -96 -96 -95 -95 -96 -97 -98 -99 -95 -91 -87 -85 -83 -82 -82 -82 -79 -77 -78 -81 -84 -81 -80 -81 -84 -85 -84 -84 -84 -85 -85 -85 -84 -83 -82 -83 -83 -83 -84 -85 -86 -86 -86 -87 -87 -87 -87 -86 -85 -85 -87 -88 -90 -90 -90 -90 -90 -90 -90 -89 -89 -90 -91 -90 -89 -15 -24 -32 -41 -50 -56 -60 -63 -64 -66 -67 -68 -69 -70 -68 -62 -55 -53 -52 -50 -49 -50 -53 -55 -58 -59 -55 -47 -36 -27 -17 -13 -17 -28 -42 -52 -56 -51 -42 -43 -50 -56 -57 -57 -56 -56 -59 -64 -68 -65 -57 -48 -44 -46 -52 -59 -64 -56 -46 -38 -34 -39 -47 -54 -60 -64 -63 -62 -63 -64 -59 -48 -41 -41 -47 -48 -44 -39 -38 -46 -58 -65 -63 -52 -45 -47 -52 -58 -61 -66 -71 -74 -73 -69 -64 -58 -52 -49 -52 -54 -54 -52 -47 -41 -38 -39 -48 -57 -63 -65 -64 -64 -63 -65 -68 -71 -72 -73 -72 -71 -71 -69 -68 -67 -66 -66 -67 -69 -70 -70 -70 -70 -71 -70 -67 -63 -58 -53 -52 -51 -50 -49 -50 -51 -52 -54 -56 -58 -61 -58 -50 -38 -43 -50 -54 -51 -50 -50 -49 -48 -47 -48 -50 -55 -62 -69 -72 -73 -71 -67 -70 -75 -76 -72 -63 -60 -60 -61 -61 -68 -77 -85 -90 -95 -97 -95 -90 -84 -83 -87 -89 -85 -77 -75 -77 -79 -78 -74 -75 -82 -90 -86 -78 -76 -80 -86 -93 -98 -101 -101 -95 -91 -90 -92 -95 -98 -99 -99 -97 -94 -91 -89 -88 -86 -84 -84 -83 -83 -83 -86 -90 -91 -89 -80 -71 -67 -66 -69 -72 -75 -79 -82 -87 -92 -95 -92 -85 -82 -84 -88 -92 -94 -94 -95 -97 -99 -99 -97 -95 -94 -92 -88 -83 -78 -74 -75 -77 -81 -85 -88 -81 -73 -69 -75 -82 -84 -82 -79 -79 -81 -84 -87 -89 -91 -92 -93 -92 -91 -92 -93 -92 -88 -82 -80 -79 -79 -78 -79 -81 -81 -79 -76 -75 -75 -75 -77 -78 -78 -75 -70 -67 -67 -69 -72 -78 -82 -84 -85 -85 -87 -89 -90 -91 -93 -98 -105 -111 -117 -119 -119 -116 -113 -109 -106 -105 -104 -105 -107 -107 -107 -106 -105 -107 -106 -103 -99 -95 -93 -92 -91 -90 -91 -94 -98 -99 -95 -90 -84 -81 -80 -80 -80 -79 -77 -77 -80 -83 -84 -80 -79 -79 -81 -81 -81 -82 -84 -85 -84 -84 -84 -83 -82 -82 -82 -83 -85 -86 -86 -86 -86 -87 -87 -87 -86 -86 -85 -85 -85 -86 -89 -89 -89 -90 -90 -89 -89 -90 -90 -91 -91 -90 -89 -18 -26 -36 -41 -47 -53 -58 -61 -62 -63 -65 -66 -66 -67 -66 -63 -59 -58 -58 -56 -52 -55 -59 -63 -64 -65 -63 -56 -45 -32 -18 -11 -13 -23 -40 -55 -66 -72 -69 -63 -58 -56 -55 -57 -58 -60 -62 -67 -70 -65 -56 -46 -42 -47 -54 -59 -58 -48 -41 -38 -39 -43 -48 -52 -57 -62 -68 -71 -74 -75 -74 -67 -59 -52 -50 -49 -48 -49 -53 -61 -67 -66 -59 -48 -44 -46 -53 -60 -66 -70 -73 -74 -70 -66 -61 -54 -49 -48 -49 -50 -52 -53 -49 -41 -36 -37 -46 -55 -61 -63 -64 -63 -62 -62 -65 -68 -69 -69 -67 -63 -61 -60 -60 -60 -62 -64 -66 -67 -68 -68 -66 -64 -62 -60 -59 -58 -56 -53 -51 -50 -48 -46 -44 -45 -47 -51 -54 -55 -56 -53 -45 -35 -42 -52 -56 -54 -52 -51 -50 -49 -48 -49 -54 -62 -72 -76 -76 -73 -68 -66 -71 -74 -72 -65 -55 -53 -57 -61 -62 -67 -76 -83 -89 -93 -90 -85 -77 -70 -78 -87 -89 -81 -72 -78 -86 -89 -84 -78 -78 -81 -84 -78 -75 -78 -85 -92 -99 -103 -104 -101 -95 -92 -94 -97 -97 -98 -97 -95 -94 -92 -91 -90 -89 -89 -89 -91 -92 -92 -92 -94 -94 -91 -84 -74 -68 -66 -67 -68 -69 -73 -77 -81 -88 -93 -95 -91 -86 -86 -89 -93 -95 -96 -96 -96 -97 -98 -98 -96 -90 -83 -79 -77 -78 -79 -81 -84 -86 -88 -89 -84 -76 -70 -70 -78 -85 -85 -82 -79 -80 -82 -84 -86 -87 -88 -89 -90 -90 -90 -90 -88 -84 -78 -76 -76 -76 -76 -77 -79 -81 -80 -78 -75 -74 -75 -77 -79 -78 -76 -72 -67 -64 -66 -70 -74 -77 -80 -81 -82 -83 -85 -87 -88 -88 -88 -91 -96 -103 -109 -113 -115 -115 -112 -108 -104 -102 -102 -103 -105 -106 -107 -107 -106 -106 -106 -105 -102 -97 -93 -89 -88 -87 -88 -93 -98 -97 -91 -86 -81 -78 -77 -77 -77 -76 -75 -78 -81 -84 -83 -79 -77 -77 -76 -77 -79 -81 -83 -83 -84 -84 -83 -83 -82 -82 -82 -83 -85 -85 -85 -85 -87 -88 -88 -87 -85 -86 -85 -85 -85 -85 -87 -89 -90 -91 -90 -90 -90 -90 -90 -90 -91 -91 -90 -24 -30 -39 -43 -46 -50 -55 -59 -60 -62 -64 -66 -63 -62 -64 -67 -69 -69 -68 -67 -65 -65 -65 -66 -67 -68 -68 -68 -64 -53 -33 -22 -22 -30 -41 -51 -60 -66 -70 -68 -66 -62 -59 -59 -63 -67 -70 -73 -73 -66 -55 -43 -38 -46 -53 -55 -51 -43 -40 -41 -46 -50 -53 -57 -61 -65 -70 -71 -72 -73 -75 -74 -71 -67 -63 -62 -63 -66 -69 -71 -69 -66 -60 -54 -50 -50 -54 -59 -65 -70 -72 -72 -69 -62 -53 -47 -46 -49 -47 -47 -49 -54 -51 -41 -35 -35 -44 -54 -59 -62 -63 -62 -61 -61 -62 -64 -64 -62 -59 -55 -54 -53 -54 -56 -60 -64 -66 -65 -62 -59 -56 -53 -53 -53 -54 -55 -55 -54 -51 -48 -45 -41 -39 -41 -45 -49 -52 -54 -56 -51 -42 -31 -43 -55 -63 -61 -54 -52 -50 -47 -47 -53 -62 -71 -79 -81 -75 -68 -63 -67 -74 -74 -69 -61 -51 -49 -52 -57 -60 -69 -78 -85 -91 -92 -87 -79 -72 -67 -79 -88 -89 -81 -77 -85 -92 -93 -86 -81 -78 -78 -78 -77 -78 -81 -86 -92 -100 -106 -107 -104 -99 -97 -98 -100 -101 -101 -99 -98 -96 -95 -94 -92 -92 -92 -94 -97 -99 -99 -99 -97 -93 -86 -79 -72 -67 -65 -66 -68 -70 -72 -75 -81 -89 -94 -94 -92 -90 -93 -97 -100 -100 -99 -98 -96 -96 -97 -96 -91 -81 -72 -72 -74 -78 -82 -88 -89 -89 -86 -82 -76 -70 -68 -72 -80 -85 -86 -83 -78 -79 -81 -83 -84 -84 -85 -85 -87 -87 -86 -84 -81 -77 -73 -73 -74 -74 -74 -77 -80 -80 -77 -76 -75 -75 -76 -78 -77 -75 -71 -68 -63 -63 -66 -71 -74 -76 -77 -78 -79 -82 -84 -86 -86 -86 -86 -87 -90 -96 -103 -108 -111 -113 -111 -107 -103 -100 -99 -100 -103 -105 -107 -108 -108 -106 -105 -103 -102 -100 -97 -94 -90 -89 -90 -92 -95 -93 -89 -86 -83 -80 -77 -75 -73 -73 -73 -77 -80 -80 -77 -74 -73 -73 -74 -76 -78 -80 -82 -82 -82 -83 -83 -83 -83 -83 -83 -84 -84 -84 -84 -86 -88 -88 -88 -87 -86 -86 -86 -86 -86 -85 -86 -88 -90 -92 -91 -92 -91 -90 -88 -89 -90 -91 -91 -32 -36 -42 -48 -49 -50 -53 -60 -62 -62 -64 -67 -66 -67 -69 -73 -76 -73 -69 -67 -67 -66 -66 -66 -67 -68 -68 -69 -67 -61 -44 -34 -33 -40 -47 -52 -57 -63 -68 -70 -69 -68 -66 -66 -69 -71 -73 -75 -74 -67 -56 -43 -37 -44 -49 -50 -45 -41 -41 -44 -49 -53 -58 -62 -65 -67 -68 -69 -70 -71 -71 -71 -71 -72 -73 -74 -75 -75 -74 -70 -68 -67 -67 -66 -63 -61 -61 -63 -67 -70 -70 -68 -63 -55 -45 -41 -44 -49 -46 -45 -49 -55 -52 -42 -35 -34 -43 -53 -59 -62 -63 -62 -61 -61 -61 -59 -57 -54 -52 -50 -50 -50 -52 -56 -61 -63 -63 -59 -54 -51 -50 -51 -52 -55 -57 -58 -58 -56 -55 -50 -45 -39 -39 -42 -46 -50 -54 -58 -59 -53 -41 -31 -43 -57 -66 -66 -57 -56 -55 -52 -54 -61 -70 -77 -81 -75 -66 -61 -62 -73 -77 -74 -69 -64 -56 -50 -49 -53 -60 -74 -83 -88 -92 -93 -88 -80 -72 -70 -80 -87 -88 -83 -83 -90 -94 -94 -86 -82 -80 -80 -79 -78 -79 -83 -90 -98 -104 -109 -110 -107 -103 -103 -104 -105 -106 -105 -104 -102 -100 -98 -95 -93 -93 -95 -98 -100 -100 -100 -99 -94 -86 -79 -73 -69 -67 -66 -67 -69 -71 -73 -76 -82 -88 -92 -94 -96 -97 -101 -104 -105 -104 -103 -100 -98 -96 -96 -92 -83 -72 -67 -70 -74 -78 -82 -88 -87 -84 -78 -74 -71 -69 -70 -73 -81 -87 -88 -83 -76 -77 -80 -83 -83 -82 -82 -82 -83 -83 -81 -78 -75 -72 -71 -72 -73 -74 -76 -79 -79 -76 -73 -74 -75 -76 -76 -76 -73 -70 -67 -64 -62 -64 -68 -72 -73 -74 -75 -77 -78 -80 -82 -84 -85 -85 -84 -84 -86 -90 -97 -103 -107 -110 -110 -107 -103 -99 -97 -98 -100 -103 -106 -108 -108 -106 -102 -99 -98 -98 -98 -98 -94 -90 -88 -88 -90 -90 -90 -89 -88 -85 -80 -76 -72 -70 -73 -75 -76 -73 -70 -70 -71 -72 -74 -76 -78 -81 -83 -83 -82 -81 -81 -82 -82 -83 -83 -84 -84 -84 -85 -86 -87 -88 -87 -87 -86 -87 -87 -86 -86 -86 -87 -88 -90 -91 -92 -92 -92 -91 -88 -89 -90 -91 -91 -41 -45 -48 -54 -56 -56 -56 -59 -57 -56 -59 -69 -72 -75 -76 -77 -75 -67 -63 -62 -65 -66 -69 -70 -70 -69 -70 -69 -66 -58 -44 -38 -39 -46 -51 -55 -59 -63 -67 -70 -71 -72 -72 -72 -73 -75 -76 -75 -71 -62 -52 -41 -36 -42 -46 -46 -45 -45 -48 -51 -54 -58 -64 -66 -67 -66 -66 -67 -68 -67 -63 -63 -65 -69 -73 -77 -78 -75 -70 -66 -67 -69 -72 -73 -73 -72 -71 -71 -72 -70 -67 -62 -55 -46 -39 -39 -44 -48 -46 -46 -50 -58 -54 -44 -36 -34 -43 -53 -60 -63 -63 -62 -62 -61 -59 -55 -51 -50 -50 -49 -49 -51 -54 -58 -61 -61 -58 -54 -50 -49 -52 -55 -58 -60 -62 -63 -62 -61 -56 -50 -43 -39 -41 -44 -48 -53 -58 -62 -62 -55 -43 -34 -43 -56 -66 -67 -62 -59 -56 -54 -56 -62 -69 -72 -69 -63 -62 -65 -72 -78 -78 -76 -71 -66 -57 -51 -49 -54 -66 -79 -85 -88 -91 -93 -90 -82 -73 -72 -78 -84 -87 -85 -86 -89 -91 -90 -87 -86 -85 -84 -82 -78 -78 -85 -94 -101 -105 -108 -110 -110 -109 -108 -108 -108 -107 -107 -106 -105 -102 -99 -94 -92 -94 -98 -100 -100 -98 -96 -92 -85 -78 -72 -69 -67 -68 -69 -70 -71 -73 -75 -79 -84 -89 -94 -98 -102 -105 -107 -106 -105 -103 -103 -102 -100 -98 -95 -87 -76 -67 -66 -68 -71 -75 -80 -86 -86 -82 -75 -69 -69 -70 -73 -78 -85 -89 -89 -83 -76 -78 -81 -82 -81 -79 -79 -79 -79 -80 -77 -74 -71 -70 -71 -72 -74 -76 -78 -77 -74 -71 -71 -73 -75 -76 -75 -73 -70 -67 -64 -62 -63 -67 -70 -72 -72 -72 -74 -75 -77 -79 -81 -83 -84 -84 -83 -82 -83 -87 -92 -98 -102 -106 -107 -105 -102 -99 -96 -96 -98 -101 -105 -107 -107 -104 -99 -95 -92 -92 -94 -96 -93 -87 -82 -79 -81 -83 -85 -87 -89 -88 -85 -80 -76 -73 -74 -74 -72 -68 -67 -69 -72 -74 -76 -78 -80 -82 -84 -83 -81 -78 -78 -80 -82 -82 -83 -83 -83 -83 -84 -86 -87 -87 -87 -88 -87 -88 -87 -87 -86 -87 -87 -88 -89 -90 -92 -92 -92 -92 -89 -89 -90 -91 -91 -46 -56 -62 -61 -58 -54 -52 -51 -50 -51 -56 -66 -72 -74 -75 -74 -70 -63 -60 -59 -59 -62 -68 -72 -73 -71 -71 -69 -64 -54 -43 -40 -43 -50 -56 -61 -65 -68 -69 -71 -73 -74 -75 -75 -76 -77 -77 -74 -65 -54 -44 -37 -35 -40 -44 -46 -48 -53 -58 -62 -65 -69 -71 -69 -65 -63 -65 -64 -60 -56 -53 -55 -60 -66 -70 -75 -74 -70 -66 -67 -68 -68 -68 -69 -71 -73 -74 -75 -72 -68 -63 -57 -49 -39 -36 -39 -45 -49 -47 -48 -52 -60 -56 -46 -37 -35 -43 -53 -60 -63 -63 -64 -63 -61 -57 -52 -50 -50 -51 -51 -51 -53 -57 -60 -62 -60 -56 -52 -50 -53 -58 -61 -64 -66 -67 -68 -66 -62 -54 -47 -43 -41 -44 -47 -52 -57 -63 -65 -63 -54 -42 -35 -43 -54 -63 -65 -64 -60 -56 -53 -54 -59 -65 -67 -65 -65 -70 -75 -78 -77 -75 -73 -70 -66 -62 -57 -54 -54 -66 -78 -82 -84 -87 -90 -86 -77 -69 -70 -77 -84 -87 -86 -84 -83 -83 -83 -88 -89 -89 -87 -84 -77 -78 -84 -93 -98 -101 -103 -105 -107 -108 -108 -108 -107 -106 -105 -104 -103 -102 -98 -95 -95 -98 -100 -100 -98 -95 -89 -82 -76 -71 -69 -67 -67 -69 -71 -74 -75 -76 -78 -83 -88 -92 -96 -102 -106 -109 -110 -109 -107 -105 -104 -103 -102 -100 -92 -81 -71 -65 -64 -64 -66 -71 -80 -87 -87 -82 -74 -69 -70 -73 -78 -83 -87 -89 -88 -82 -79 -80 -81 -80 -78 -77 -75 -75 -76 -77 -75 -72 -70 -71 -72 -74 -75 -76 -75 -72 -69 -68 -70 -73 -74 -74 -72 -71 -69 -67 -64 -64 -67 -69 -71 -70 -70 -71 -72 -74 -75 -76 -79 -81 -83 -82 -81 -80 -81 -84 -88 -93 -97 -101 -103 -103 -101 -97 -95 -94 -96 -100 -103 -105 -104 -101 -97 -92 -89 -88 -89 -91 -88 -81 -75 -72 -75 -78 -80 -81 -82 -82 -80 -78 -76 -76 -76 -74 -72 -69 -68 -70 -73 -76 -78 -79 -80 -81 -82 -80 -78 -76 -77 -79 -80 -81 -81 -81 -81 -82 -84 -86 -87 -88 -88 -88 -87 -88 -87 -87 -87 -88 -88 -88 -89 -90 -91 -91 -91 -91 -90 -90 -90 -90 -89 -45 -53 -57 -52 -47 -43 -43 -47 -52 -55 -58 -65 -69 -71 -70 -69 -66 -63 -61 -59 -56 -56 -63 -70 -73 -70 -69 -67 -63 -55 -47 -45 -48 -54 -61 -69 -74 -75 -74 -73 -73 -74 -75 -77 -77 -76 -74 -73 -63 -49 -38 -32 -34 -38 -42 -46 -52 -60 -67 -71 -74 -76 -73 -68 -64 -63 -62 -56 -49 -44 -42 -48 -57 -66 -72 -73 -71 -69 -66 -64 -60 -58 -60 -66 -71 -73 -74 -74 -69 -63 -58 -52 -44 -37 -36 -40 -46 -50 -48 -50 -55 -61 -56 -46 -38 -36 -43 -53 -59 -63 -65 -66 -64 -61 -56 -53 -52 -52 -53 -53 -54 -57 -61 -63 -63 -60 -57 -55 -55 -58 -63 -66 -67 -69 -71 -70 -66 -58 -51 -47 -45 -46 -49 -52 -56 -62 -66 -66 -61 -51 -41 -36 -43 -52 -62 -66 -66 -62 -57 -54 -56 -60 -64 -67 -66 -67 -71 -74 -75 -76 -75 -74 -71 -67 -60 -54 -50 -50 -62 -72 -78 -80 -84 -84 -77 -68 -62 -70 -77 -83 -86 -85 -79 -75 -74 -76 -86 -90 -90 -88 -85 -78 -79 -84 -90 -95 -97 -99 -100 -101 -102 -102 -102 -101 -101 -101 -101 -102 -102 -99 -97 -98 -100 -100 -98 -95 -90 -81 -74 -72 -71 -68 -68 -69 -71 -73 -76 -78 -79 -82 -87 -92 -95 -98 -103 -106 -109 -109 -109 -109 -108 -107 -105 -103 -99 -87 -76 -69 -67 -64 -63 -66 -72 -82 -89 -89 -84 -75 -70 -71 -75 -81 -84 -87 -88 -86 -82 -81 -81 -79 -76 -75 -74 -73 -72 -73 -76 -75 -73 -71 -72 -73 -74 -74 -73 -70 -68 -67 -67 -70 -71 -72 -71 -70 -69 -68 -67 -67 -68 -70 -70 -69 -68 -67 -68 -70 -71 -72 -74 -76 -79 -81 -80 -79 -78 -78 -81 -85 -89 -93 -97 -99 -99 -98 -95 -93 -94 -95 -98 -100 -102 -102 -100 -96 -91 -87 -84 -84 -86 -85 -80 -75 -73 -75 -77 -77 -76 -76 -77 -77 -76 -75 -73 -71 -70 -70 -71 -72 -73 -74 -75 -76 -77 -78 -79 -79 -77 -76 -75 -77 -79 -80 -80 -79 -79 -79 -81 -84 -85 -87 -87 -87 -87 -88 -88 -88 -88 -89 -89 -89 -88 -89 -90 -91 -91 -91 -91 -90 -90 -90 -89 -90 -39 -43 -44 -42 -38 -36 -38 -47 -56 -61 -63 -65 -69 -69 -68 -65 -63 -62 -61 -60 -57 -55 -60 -66 -69 -68 -65 -64 -63 -59 -54 -52 -53 -58 -65 -72 -76 -77 -75 -71 -71 -74 -77 -76 -72 -70 -73 -76 -68 -52 -37 -29 -32 -37 -42 -49 -58 -65 -70 -74 -79 -78 -70 -64 -59 -59 -57 -49 -40 -33 -36 -48 -59 -67 -69 -67 -64 -61 -58 -53 -49 -49 -54 -60 -64 -67 -68 -69 -68 -65 -60 -54 -47 -40 -37 -39 -45 -49 -48 -51 -57 -61 -53 -43 -36 -35 -44 -53 -59 -64 -67 -66 -63 -59 -56 -55 -54 -54 -55 -56 -58 -61 -64 -66 -65 -63 -61 -60 -61 -64 -66 -69 -71 -71 -70 -66 -60 -53 -50 -49 -50 -51 -53 -56 -61 -66 -68 -64 -56 -47 -40 -37 -42 -51 -61 -66 -66 -62 -58 -57 -59 -62 -64 -63 -60 -62 -67 -72 -77 -79 -77 -73 -67 -59 -54 -51 -51 -52 -60 -69 -75 -76 -78 -77 -71 -65 -64 -72 -78 -82 -84 -82 -75 -70 -70 -76 -85 -87 -87 -84 -83 -83 -86 -90 -92 -97 -99 -99 -98 -98 -98 -97 -96 -96 -96 -97 -98 -99 -100 -99 -99 -100 -101 -99 -95 -89 -82 -76 -74 -72 -71 -69 -69 -71 -73 -75 -78 -81 -83 -86 -92 -96 -98 -100 -102 -104 -106 -106 -107 -107 -107 -105 -103 -101 -93 -80 -72 -68 -66 -63 -64 -68 -76 -88 -93 -92 -85 -75 -70 -71 -76 -81 -84 -87 -87 -85 -82 -82 -80 -76 -72 -73 -73 -73 -72 -73 -75 -75 -74 -73 -73 -73 -72 -70 -68 -67 -67 -67 -68 -68 -67 -67 -68 -68 -67 -67 -67 -67 -68 -69 -68 -66 -64 -64 -65 -66 -68 -69 -71 -74 -77 -78 -78 -77 -76 -76 -78 -82 -86 -91 -93 -95 -95 -94 -93 -92 -93 -94 -96 -97 -98 -99 -98 -95 -90 -86 -83 -83 -84 -85 -83 -81 -79 -80 -79 -76 -73 -74 -75 -76 -76 -75 -74 -71 -69 -67 -69 -71 -72 -71 -70 -71 -73 -75 -77 -77 -76 -75 -75 -78 -79 -79 -78 -77 -77 -78 -80 -82 -84 -85 -85 -85 -86 -88 -88 -87 -88 -89 -89 -89 -90 -90 -90 -90 -90 -91 -90 -90 -90 -90 -89 -90 -31 -33 -35 -37 -35 -35 -38 -49 -59 -64 -66 -66 -69 -70 -68 -63 -60 -59 -61 -62 -62 -60 -62 -65 -68 -66 -61 -60 -61 -62 -62 -58 -55 -54 -58 -63 -67 -69 -69 -68 -69 -73 -77 -76 -69 -68 -72 -77 -73 -61 -45 -34 -31 -38 -47 -57 -65 -70 -73 -78 -82 -77 -66 -58 -55 -55 -52 -43 -35 -34 -42 -52 -58 -60 -58 -56 -56 -58 -59 -55 -49 -49 -54 -60 -62 -64 -66 -67 -67 -64 -62 -60 -55 -44 -38 -38 -43 -46 -47 -51 -57 -59 -52 -41 -35 -36 -45 -53 -60 -63 -64 -62 -61 -59 -58 -56 -56 -57 -58 -59 -62 -65 -67 -69 -67 -66 -66 -67 -67 -69 -71 -72 -73 -70 -64 -58 -53 -52 -53 -52 -52 -53 -55 -60 -66 -69 -68 -58 -49 -43 -40 -37 -42 -50 -58 -63 -62 -60 -59 -59 -61 -63 -61 -57 -53 -58 -66 -75 -81 -81 -75 -68 -60 -52 -48 -49 -51 -54 -62 -71 -75 -74 -73 -71 -69 -67 -67 -72 -75 -79 -82 -80 -73 -70 -71 -78 -85 -85 -83 -82 -83 -90 -96 -100 -101 -105 -105 -104 -102 -101 -100 -98 -95 -95 -94 -94 -94 -96 -97 -99 -100 -101 -100 -94 -87 -81 -77 -77 -76 -73 -70 -69 -71 -73 -74 -76 -80 -83 -87 -92 -98 -100 -100 -100 -100 -102 -102 -102 -101 -101 -100 -99 -98 -96 -86 -74 -69 -67 -65 -63 -65 -73 -84 -94 -97 -93 -84 -73 -68 -69 -75 -80 -84 -87 -87 -84 -83 -82 -78 -73 -69 -71 -73 -74 -73 -72 -74 -75 -75 -74 -72 -69 -68 -67 -66 -67 -68 -69 -68 -65 -64 -64 -65 -66 -66 -67 -67 -67 -66 -65 -64 -63 -61 -61 -61 -62 -63 -66 -68 -71 -73 -75 -76 -75 -74 -74 -75 -79 -84 -88 -90 -91 -92 -92 -91 -92 -92 -93 -93 -93 -94 -95 -95 -93 -89 -86 -83 -82 -83 -84 -85 -87 -88 -85 -80 -76 -74 -74 -75 -77 -78 -77 -75 -72 -68 -67 -69 -70 -69 -68 -67 -68 -70 -73 -75 -75 -75 -75 -76 -77 -77 -77 -77 -77 -77 -77 -78 -80 -81 -83 -83 -84 -85 -87 -87 -88 -88 -89 -89 -89 -89 -89 -89 -89 -90 -91 -90 -90 -91 -90 -90 -91 -25 -27 -31 -36 -39 -40 -42 -51 -60 -64 -65 -64 -66 -69 -66 -61 -56 -56 -60 -65 -67 -66 -66 -67 -68 -66 -62 -59 -60 -63 -68 -69 -66 -61 -59 -62 -66 -69 -70 -70 -72 -74 -75 -71 -67 -67 -70 -74 -71 -60 -46 -36 -33 -42 -53 -63 -70 -73 -76 -79 -81 -75 -62 -54 -51 -52 -49 -42 -38 -40 -47 -51 -52 -51 -49 -49 -52 -57 -62 -62 -57 -56 -58 -62 -66 -67 -67 -66 -64 -61 -61 -62 -60 -50 -41 -38 -41 -43 -45 -50 -56 -59 -53 -43 -36 -37 -46 -53 -58 -59 -59 -58 -59 -60 -61 -60 -59 -59 -60 -61 -63 -66 -69 -70 -70 -69 -69 -70 -72 -73 -74 -74 -71 -63 -57 -54 -54 -55 -55 -54 -53 -55 -61 -67 -71 -70 -63 -50 -42 -39 -40 -41 -44 -48 -53 -59 -59 -59 -58 -58 -62 -62 -59 -56 -56 -64 -73 -80 -84 -80 -72 -63 -55 -50 -47 -49 -55 -62 -70 -74 -74 -72 -71 -70 -69 -69 -69 -70 -73 -77 -80 -79 -74 -72 -74 -78 -83 -84 -84 -84 -88 -97 -104 -109 -112 -112 -110 -107 -106 -106 -106 -103 -99 -96 -95 -93 -93 -95 -97 -99 -101 -101 -96 -86 -79 -75 -76 -79 -79 -75 -70 -69 -72 -74 -76 -78 -82 -86 -91 -97 -102 -102 -101 -100 -99 -100 -99 -96 -93 -92 -93 -93 -93 -90 -79 -70 -66 -67 -67 -66 -69 -77 -88 -95 -94 -86 -75 -66 -65 -68 -75 -81 -86 -88 -86 -84 -82 -81 -76 -71 -67 -69 -72 -73 -73 -72 -73 -73 -74 -73 -70 -68 -67 -67 -68 -69 -70 -69 -66 -64 -63 -64 -65 -65 -65 -66 -66 -65 -63 -62 -61 -61 -60 -59 -59 -59 -60 -63 -65 -67 -69 -71 -72 -72 -72 -72 -73 -77 -82 -86 -88 -90 -91 -92 -91 -91 -91 -91 -91 -90 -90 -91 -92 -91 -88 -85 -83 -82 -81 -82 -84 -88 -90 -86 -80 -76 -76 -77 -78 -79 -80 -78 -75 -71 -68 -68 -69 -69 -67 -65 -66 -68 -70 -71 -72 -73 -74 -75 -76 -76 -76 -76 -77 -77 -76 -76 -77 -78 -79 -81 -82 -83 -84 -85 -86 -87 -87 -88 -88 -89 -90 -90 -89 -89 -90 -90 -90 -90 -91 -91 -91 -91 -20 -24 -30 -38 -44 -46 -48 -52 -58 -62 -62 -60 -61 -63 -62 -58 -54 -55 -61 -66 -67 -66 -66 -69 -71 -71 -67 -63 -63 -66 -74 -81 -82 -79 -73 -71 -73 -76 -76 -74 -73 -71 -69 -67 -67 -68 -70 -70 -68 -57 -44 -34 -33 -45 -56 -65 -72 -75 -77 -79 -78 -70 -57 -49 -48 -52 -52 -48 -46 -47 -47 -47 -47 -47 -48 -49 -52 -58 -63 -66 -65 -64 -64 -67 -69 -68 -65 -63 -62 -58 -58 -61 -64 -56 -45 -39 -38 -41 -44 -50 -57 -61 -57 -47 -40 -39 -45 -51 -54 -54 -54 -56 -59 -62 -65 -64 -61 -59 -59 -61 -63 -65 -67 -69 -70 -71 -73 -75 -76 -76 -75 -71 -64 -58 -57 -57 -59 -60 -58 -58 -60 -65 -72 -74 -70 -61 -50 -42 -40 -40 -41 -41 -45 -49 -55 -60 -60 -59 -58 -61 -66 -67 -65 -63 -67 -73 -78 -81 -83 -78 -70 -61 -54 -51 -49 -53 -61 -72 -76 -74 -71 -71 -72 -71 -70 -70 -70 -68 -70 -74 -77 -76 -75 -74 -75 -78 -83 -86 -88 -91 -94 -100 -104 -108 -111 -111 -109 -106 -105 -108 -108 -106 -101 -96 -94 -93 -95 -97 -99 -101 -103 -102 -92 -78 -72 -73 -77 -80 -79 -75 -69 -68 -71 -74 -77 -81 -85 -90 -95 -99 -102 -103 -102 -100 -100 -99 -94 -88 -84 -86 -89 -90 -89 -85 -75 -67 -65 -68 -70 -70 -74 -81 -91 -93 -89 -80 -69 -63 -67 -72 -79 -84 -88 -88 -86 -83 -81 -78 -74 -68 -65 -67 -70 -72 -72 -72 -72 -72 -73 -73 -71 -70 -70 -71 -71 -70 -68 -67 -65 -64 -65 -65 -65 -65 -65 -65 -66 -65 -62 -61 -60 -59 -58 -58 -57 -58 -58 -59 -61 -63 -65 -67 -68 -68 -68 -69 -71 -75 -79 -83 -86 -89 -91 -91 -90 -90 -90 -89 -88 -88 -88 -88 -89 -88 -86 -84 -82 -81 -80 -80 -82 -85 -88 -85 -79 -73 -72 -76 -79 -81 -80 -77 -74 -71 -68 -69 -69 -67 -63 -61 -64 -68 -70 -70 -70 -70 -71 -73 -74 -74 -75 -76 -77 -77 -76 -75 -76 -77 -78 -79 -80 -82 -84 -85 -85 -86 -86 -86 -87 -88 -89 -89 -89 -89 -89 -89 -89 -89 -89 -91 -91 -91 -17 -25 -36 -46 -50 -50 -49 -50 -55 -60 -60 -56 -54 -53 -52 -53 -56 -61 -64 -64 -62 -64 -70 -74 -76 -76 -75 -74 -76 -80 -85 -88 -88 -85 -78 -74 -74 -75 -76 -71 -68 -65 -64 -65 -68 -69 -67 -65 -63 -55 -44 -35 -33 -44 -54 -62 -68 -73 -76 -77 -75 -65 -52 -46 -46 -52 -57 -59 -57 -53 -47 -46 -47 -49 -52 -53 -55 -59 -64 -68 -70 -70 -70 -71 -69 -64 -59 -56 -55 -53 -54 -60 -67 -61 -48 -39 -37 -40 -45 -52 -60 -65 -62 -54 -46 -42 -45 -49 -51 -52 -53 -57 -62 -65 -68 -65 -59 -57 -57 -61 -63 -66 -68 -69 -70 -72 -75 -76 -76 -74 -69 -64 -61 -61 -63 -66 -68 -67 -67 -67 -70 -75 -80 -73 -61 -48 -40 -39 -40 -40 -39 -42 -47 -51 -55 -58 -58 -59 -62 -69 -75 -77 -76 -75 -77 -78 -79 -81 -82 -75 -65 -56 -53 -52 -53 -59 -67 -75 -71 -67 -67 -71 -75 -74 -72 -71 -71 -66 -67 -70 -75 -76 -75 -75 -77 -80 -87 -92 -96 -99 -100 -101 -102 -104 -107 -108 -107 -105 -104 -106 -106 -104 -101 -97 -97 -97 -98 -99 -100 -102 -104 -102 -89 -74 -69 -72 -77 -78 -76 -73 -68 -68 -71 -75 -79 -84 -89 -94 -98 -101 -103 -104 -104 -103 -100 -96 -91 -86 -84 -86 -88 -88 -86 -81 -71 -66 -66 -69 -72 -75 -79 -85 -91 -88 -82 -75 -67 -63 -66 -73 -81 -87 -88 -87 -84 -82 -78 -75 -71 -66 -64 -66 -67 -69 -71 -73 -72 -71 -72 -74 -74 -74 -74 -73 -71 -69 -68 -68 -67 -67 -66 -66 -65 -65 -65 -66 -66 -64 -62 -60 -59 -58 -57 -57 -57 -57 -56 -56 -56 -58 -61 -62 -63 -63 -64 -66 -69 -73 -77 -81 -85 -88 -90 -90 -89 -88 -88 -88 -87 -87 -87 -87 -86 -86 -85 -84 -83 -81 -81 -80 -80 -82 -84 -81 -75 -69 -69 -73 -76 -77 -77 -75 -73 -72 -71 -71 -68 -64 -60 -61 -64 -68 -70 -69 -68 -68 -69 -70 -71 -72 -74 -76 -77 -76 -76 -75 -75 -76 -77 -78 -80 -82 -84 -84 -85 -85 -84 -84 -85 -86 -88 -89 -89 -88 -88 -89 -89 -89 -89 -89 -90 -91 -19 -31 -45 -53 -57 -57 -56 -55 -58 -59 -58 -54 -49 -43 -42 -47 -58 -65 -66 -62 -58 -60 -71 -77 -80 -80 -81 -82 -85 -88 -90 -89 -85 -80 -73 -70 -70 -69 -69 -65 -62 -62 -63 -66 -68 -66 -62 -59 -59 -54 -45 -36 -34 -43 -52 -58 -63 -67 -72 -75 -71 -60 -48 -44 -46 -52 -59 -66 -67 -62 -52 -49 -51 -54 -58 -60 -62 -64 -66 -70 -72 -72 -70 -68 -63 -56 -50 -47 -46 -48 -54 -64 -70 -61 -47 -37 -36 -41 -49 -57 -64 -69 -67 -61 -53 -49 -49 -50 -51 -53 -57 -62 -66 -67 -67 -61 -56 -55 -57 -60 -63 -67 -69 -70 -71 -72 -73 -73 -71 -68 -64 -63 -65 -69 -73 -76 -78 -78 -78 -79 -81 -82 -80 -66 -50 -39 -39 -45 -47 -46 -44 -46 -50 -54 -58 -59 -59 -62 -67 -73 -79 -82 -84 -85 -84 -83 -81 -79 -78 -71 -59 -51 -52 -56 -59 -63 -67 -66 -58 -58 -65 -75 -77 -75 -73 -72 -69 -63 -64 -69 -76 -78 -76 -76 -80 -86 -94 -99 -103 -105 -105 -102 -101 -102 -103 -105 -108 -108 -106 -104 -102 -101 -100 -100 -100 -100 -100 -100 -101 -103 -104 -100 -84 -71 -67 -72 -76 -76 -74 -70 -67 -69 -73 -78 -83 -88 -92 -96 -99 -101 -102 -103 -104 -103 -99 -95 -93 -91 -90 -88 -87 -85 -82 -76 -68 -65 -66 -70 -74 -77 -82 -87 -89 -84 -78 -72 -66 -64 -68 -75 -83 -87 -85 -83 -81 -78 -76 -74 -70 -65 -62 -62 -64 -66 -70 -73 -73 -73 -73 -76 -77 -77 -75 -73 -70 -69 -68 -69 -69 -69 -68 -66 -65 -64 -65 -65 -65 -63 -62 -60 -59 -56 -55 -55 -56 -56 -54 -52 -52 -53 -55 -58 -60 -61 -61 -64 -67 -71 -73 -77 -81 -84 -87 -87 -87 -87 -87 -88 -87 -86 -85 -85 -85 -85 -85 -84 -83 -82 -81 -80 -80 -80 -81 -78 -72 -67 -68 -70 -71 -71 -71 -72 -73 -74 -75 -72 -67 -62 -60 -62 -65 -67 -68 -67 -66 -66 -65 -66 -68 -72 -74 -75 -74 -75 -75 -76 -75 -75 -76 -77 -79 -81 -82 -83 -83 -83 -82 -83 -84 -85 -86 -88 -89 -88 -88 -88 -88 -89 -88 -88 -89 -90 -25 -39 -50 -55 -58 -58 -57 -55 -60 -59 -56 -52 -48 -39 -36 -41 -53 -63 -66 -62 -56 -56 -66 -75 -79 -79 -80 -83 -86 -88 -86 -83 -77 -71 -66 -65 -65 -63 -61 -60 -60 -62 -65 -67 -64 -60 -56 -54 -55 -51 -44 -37 -36 -46 -56 -61 -63 -65 -70 -71 -67 -55 -48 -46 -48 -52 -58 -65 -70 -70 -63 -59 -60 -64 -70 -74 -75 -74 -73 -73 -72 -68 -63 -56 -52 -47 -43 -41 -42 -48 -59 -69 -70 -57 -43 -35 -36 -44 -53 -62 -68 -71 -70 -68 -64 -60 -57 -55 -56 -59 -64 -68 -68 -65 -60 -54 -53 -55 -59 -61 -63 -65 -68 -69 -70 -70 -69 -68 -66 -65 -65 -68 -72 -78 -82 -85 -86 -87 -88 -88 -86 -81 -72 -56 -43 -36 -42 -50 -54 -53 -51 -51 -53 -57 -61 -61 -61 -63 -66 -71 -77 -81 -84 -86 -86 -81 -77 -74 -75 -71 -61 -53 -52 -55 -59 -62 -63 -59 -56 -60 -68 -77 -77 -75 -73 -70 -65 -62 -64 -71 -79 -80 -77 -79 -85 -94 -100 -104 -106 -107 -106 -103 -100 -99 -100 -102 -107 -109 -106 -100 -98 -99 -102 -104 -104 -103 -102 -101 -101 -102 -100 -92 -77 -68 -67 -72 -75 -75 -72 -68 -66 -70 -75 -82 -88 -93 -95 -97 -98 -99 -98 -98 -98 -97 -96 -95 -95 -94 -92 -88 -83 -79 -76 -70 -63 -61 -64 -71 -76 -79 -84 -88 -89 -84 -77 -70 -66 -66 -69 -76 -83 -85 -83 -81 -79 -78 -76 -73 -69 -64 -60 -59 -60 -64 -68 -72 -74 -75 -76 -78 -79 -77 -75 -73 -71 -70 -69 -69 -69 -68 -68 -67 -66 -65 -65 -64 -62 -61 -61 -60 -58 -54 -53 -53 -54 -54 -52 -50 -48 -48 -50 -54 -57 -59 -60 -63 -66 -68 -70 -72 -75 -78 -82 -84 -85 -86 -87 -88 -86 -85 -84 -84 -85 -85 -84 -83 -82 -82 -81 -81 -80 -79 -79 -76 -71 -67 -67 -67 -68 -67 -68 -70 -73 -75 -75 -71 -66 -62 -62 -63 -64 -65 -65 -65 -64 -64 -63 -64 -67 -71 -72 -72 -72 -73 -75 -76 -75 -75 -75 -75 -76 -77 -79 -80 -81 -83 -83 -82 -82 -83 -85 -87 -89 -89 -88 -87 -87 -88 -87 -88 -88 -89 -28 -40 -47 -50 -53 -54 -55 -56 -60 -60 -56 -51 -48 -42 -37 -36 -44 -57 -65 -64 -58 -54 -61 -69 -74 -75 -76 -79 -82 -82 -78 -73 -69 -65 -61 -62 -63 -62 -60 -58 -60 -63 -66 -66 -60 -54 -50 -49 -54 -50 -43 -37 -39 -52 -62 -67 -69 -71 -72 -69 -61 -51 -48 -48 -49 -51 -56 -64 -70 -74 -74 -74 -76 -78 -80 -79 -79 -80 -80 -77 -71 -63 -54 -43 -39 -38 -38 -38 -41 -52 -64 -71 -67 -53 -42 -36 -38 -48 -57 -64 -68 -70 -70 -70 -69 -69 -68 -66 -65 -67 -70 -68 -62 -55 -48 -49 -53 -56 -57 -59 -62 -64 -65 -64 -63 -63 -64 -66 -68 -71 -73 -76 -79 -83 -87 -89 -91 -92 -91 -87 -80 -70 -60 -49 -41 -39 -44 -51 -55 -56 -54 -52 -54 -58 -64 -64 -63 -63 -65 -71 -75 -77 -78 -78 -75 -70 -68 -71 -78 -77 -68 -59 -54 -55 -58 -60 -61 -58 -57 -62 -69 -75 -77 -77 -76 -74 -68 -66 -69 -76 -85 -84 -83 -85 -93 -101 -104 -106 -107 -110 -108 -103 -99 -96 -97 -99 -103 -106 -105 -100 -100 -104 -107 -107 -104 -101 -100 -100 -101 -101 -95 -84 -72 -67 -68 -72 -76 -74 -70 -67 -67 -73 -79 -85 -91 -96 -98 -98 -97 -95 -92 -91 -91 -91 -91 -94 -96 -96 -94 -87 -80 -74 -70 -67 -61 -59 -61 -70 -76 -80 -84 -89 -90 -84 -77 -71 -67 -68 -71 -76 -81 -84 -82 -80 -79 -79 -77 -74 -70 -64 -60 -58 -59 -61 -65 -70 -74 -77 -79 -79 -78 -77 -76 -75 -73 -72 -70 -69 -68 -67 -67 -67 -66 -65 -64 -62 -60 -59 -59 -58 -55 -51 -50 -51 -52 -53 -51 -49 -46 -44 -46 -50 -55 -58 -59 -61 -63 -65 -66 -67 -69 -73 -77 -80 -83 -84 -86 -86 -84 -83 -82 -83 -84 -84 -84 -82 -81 -80 -80 -79 -79 -79 -79 -77 -72 -67 -65 -66 -66 -65 -66 -68 -71 -73 -72 -70 -67 -65 -63 -62 -61 -60 -60 -62 -62 -63 -63 -64 -67 -69 -70 -70 -71 -73 -75 -76 -75 -74 -73 -73 -73 -74 -75 -77 -79 -80 -81 -81 -81 -81 -84 -86 -88 -89 -88 -87 -87 -87 -87 -87 -88 -89 -27 -34 -40 -42 -47 -51 -54 -56 -60 -62 -60 -55 -52 -51 -45 -39 -38 -51 -62 -65 -61 -55 -59 -66 -72 -74 -74 -76 -79 -79 -75 -68 -62 -58 -58 -62 -66 -67 -65 -62 -61 -62 -64 -62 -57 -49 -43 -41 -49 -48 -42 -37 -41 -52 -60 -65 -69 -71 -69 -64 -58 -50 -47 -49 -54 -59 -63 -69 -74 -78 -80 -79 -78 -78 -78 -77 -79 -80 -80 -78 -73 -64 -51 -35 -29 -31 -34 -37 -43 -56 -68 -72 -64 -49 -40 -37 -41 -50 -58 -63 -66 -67 -68 -69 -69 -70 -71 -70 -70 -69 -65 -55 -47 -43 -44 -50 -54 -56 -57 -58 -61 -62 -61 -58 -58 -62 -66 -71 -75 -78 -81 -82 -84 -86 -88 -90 -91 -89 -83 -74 -64 -55 -50 -45 -43 -45 -47 -50 -53 -54 -51 -50 -53 -58 -65 -67 -65 -65 -69 -78 -80 -78 -76 -73 -68 -65 -67 -75 -84 -83 -75 -66 -61 -60 -60 -60 -59 -58 -57 -61 -67 -74 -78 -80 -80 -78 -72 -69 -73 -81 -91 -92 -90 -90 -95 -103 -104 -104 -105 -110 -110 -104 -98 -95 -96 -96 -99 -103 -105 -104 -106 -109 -110 -106 -101 -98 -99 -101 -102 -99 -91 -79 -69 -67 -69 -73 -76 -73 -69 -66 -68 -75 -82 -87 -91 -95 -97 -98 -96 -92 -90 -89 -88 -88 -91 -95 -97 -98 -95 -87 -77 -69 -65 -64 -60 -57 -59 -67 -73 -78 -83 -89 -90 -84 -76 -71 -72 -71 -72 -75 -80 -83 -82 -80 -79 -79 -78 -74 -69 -65 -62 -61 -60 -61 -64 -68 -72 -76 -79 -78 -78 -78 -78 -78 -77 -74 -71 -68 -66 -66 -66 -66 -64 -62 -61 -60 -57 -56 -56 -55 -53 -50 -48 -49 -51 -53 -52 -49 -46 -43 -44 -47 -52 -55 -57 -59 -61 -62 -62 -63 -65 -69 -73 -77 -80 -81 -82 -81 -80 -80 -80 -81 -83 -83 -83 -81 -80 -79 -78 -77 -77 -78 -78 -77 -74 -68 -66 -66 -67 -65 -64 -66 -68 -71 -71 -70 -68 -65 -62 -59 -57 -56 -56 -58 -61 -64 -66 -66 -66 -66 -67 -68 -70 -72 -74 -75 -74 -73 -72 -71 -72 -72 -72 -74 -77 -79 -80 -81 -79 -79 -81 -85 -87 -87 -87 -86 -86 -87 -87 -86 -87 -88 -25 -28 -31 -35 -41 -48 -53 -56 -59 -64 -67 -65 -60 -61 -59 -51 -42 -46 -57 -63 -62 -57 -59 -65 -73 -79 -78 -76 -77 -79 -80 -72 -62 -54 -51 -57 -62 -66 -67 -67 -68 -66 -62 -57 -55 -49 -43 -39 -44 -46 -43 -38 -39 -47 -56 -63 -68 -66 -63 -62 -60 -55 -52 -53 -56 -61 -65 -71 -75 -79 -78 -76 -74 -74 -74 -77 -79 -80 -79 -77 -73 -64 -49 -32 -25 -27 -33 -40 -51 -64 -71 -70 -58 -42 -36 -37 -42 -50 -57 -61 -63 -64 -65 -66 -67 -68 -70 -70 -67 -60 -49 -42 -41 -44 -49 -54 -57 -58 -58 -58 -59 -59 -57 -56 -61 -67 -73 -77 -81 -83 -84 -85 -85 -87 -88 -87 -83 -74 -65 -58 -55 -54 -51 -50 -51 -52 -51 -51 -52 -53 -51 -53 -56 -60 -65 -68 -70 -74 -81 -90 -89 -86 -82 -78 -75 -76 -78 -81 -84 -83 -78 -73 -68 -65 -62 -60 -58 -58 -59 -63 -69 -76 -81 -83 -82 -80 -73 -70 -75 -84 -95 -97 -96 -95 -97 -104 -105 -106 -108 -111 -110 -106 -101 -98 -100 -99 -99 -102 -107 -108 -109 -108 -106 -102 -99 -99 -102 -103 -101 -95 -87 -77 -68 -67 -70 -73 -73 -71 -67 -65 -68 -75 -81 -85 -89 -93 -96 -98 -98 -96 -95 -94 -92 -92 -95 -98 -99 -98 -95 -85 -75 -66 -62 -62 -59 -56 -58 -64 -70 -75 -81 -89 -91 -86 -79 -72 -71 -72 -74 -77 -80 -83 -82 -80 -79 -80 -77 -73 -69 -66 -65 -64 -63 -63 -66 -69 -72 -76 -79 -80 -80 -81 -81 -80 -78 -74 -70 -66 -64 -64 -64 -63 -61 -60 -59 -57 -55 -53 -52 -52 -51 -49 -48 -50 -52 -54 -53 -51 -46 -43 -43 -45 -49 -52 -55 -57 -58 -59 -59 -60 -62 -65 -69 -73 -75 -76 -76 -75 -75 -77 -79 -81 -82 -82 -81 -80 -79 -78 -76 -76 -75 -76 -76 -76 -76 -72 -70 -68 -67 -64 -63 -64 -66 -69 -70 -69 -66 -63 -61 -58 -54 -52 -53 -57 -61 -65 -67 -66 -65 -64 -64 -66 -69 -72 -73 -73 -72 -71 -71 -71 -70 -70 -70 -71 -75 -78 -80 -80 -78 -78 -79 -81 -84 -85 -86 -86 -86 -86 -86 -86 -86 -86 -26 -25 -25 -30 -38 -45 -52 -56 -59 -65 -74 -79 -74 -71 -73 -68 -55 -49 -54 -60 -61 -58 -58 -64 -73 -81 -83 -81 -81 -82 -84 -81 -72 -60 -50 -52 -58 -64 -67 -69 -71 -70 -65 -58 -56 -50 -43 -37 -40 -43 -42 -40 -41 -46 -53 -59 -63 -60 -58 -57 -58 -57 -58 -61 -63 -66 -69 -73 -75 -74 -70 -67 -67 -69 -73 -78 -78 -77 -77 -76 -72 -62 -48 -31 -24 -27 -35 -46 -60 -69 -71 -64 -50 -37 -33 -36 -43 -50 -56 -60 -61 -62 -62 -63 -64 -65 -67 -63 -55 -45 -37 -39 -44 -50 -55 -58 -59 -58 -57 -56 -57 -57 -57 -59 -66 -73 -78 -81 -83 -84 -85 -85 -86 -86 -82 -75 -65 -57 -55 -55 -58 -57 -52 -51 -54 -59 -60 -58 -55 -51 -50 -52 -56 -62 -70 -74 -80 -87 -94 -96 -94 -89 -86 -84 -83 -84 -82 -78 -73 -75 -77 -77 -73 -68 -64 -61 -59 -60 -63 -68 -74 -82 -86 -85 -83 -80 -76 -73 -77 -87 -97 -100 -99 -99 -100 -104 -104 -105 -106 -110 -111 -109 -106 -104 -105 -105 -106 -107 -108 -107 -105 -103 -103 -104 -106 -107 -107 -104 -97 -89 -81 -74 -68 -67 -69 -70 -71 -70 -68 -67 -72 -78 -82 -84 -87 -89 -93 -96 -98 -98 -99 -98 -97 -97 -99 -99 -99 -97 -92 -82 -71 -63 -61 -61 -59 -56 -56 -62 -68 -74 -81 -87 -89 -87 -82 -77 -74 -74 -76 -78 -80 -82 -82 -81 -78 -78 -76 -72 -69 -68 -68 -66 -64 -64 -67 -70 -74 -77 -80 -81 -82 -82 -81 -78 -76 -73 -70 -67 -64 -63 -61 -60 -59 -58 -58 -56 -54 -51 -50 -49 -49 -49 -50 -52 -54 -55 -54 -51 -48 -44 -43 -44 -47 -49 -52 -54 -56 -56 -56 -57 -59 -63 -66 -69 -70 -70 -69 -70 -72 -75 -78 -80 -80 -79 -79 -78 -77 -76 -75 -74 -74 -74 -74 -74 -75 -73 -71 -69 -67 -64 -63 -64 -66 -68 -69 -68 -65 -61 -60 -57 -54 -51 -54 -58 -63 -66 -65 -64 -62 -62 -63 -66 -69 -71 -71 -70 -70 -70 -70 -69 -68 -67 -67 -68 -72 -76 -78 -78 -78 -77 -78 -79 -82 -83 -84 -85 -86 -86 -86 -86 -85 -85 -26 -24 -25 -30 -38 -45 -50 -55 -58 -65 -77 -86 -86 -80 -83 -81 -71 -56 -54 -57 -61 -58 -54 -58 -67 -77 -85 -87 -87 -85 -84 -83 -80 -72 -60 -54 -58 -63 -68 -71 -73 -72 -68 -65 -64 -58 -48 -40 -41 -42 -43 -45 -49 -50 -51 -53 -57 -58 -57 -56 -55 -57 -62 -67 -70 -73 -74 -75 -71 -65 -58 -58 -61 -66 -72 -75 -74 -73 -73 -74 -72 -64 -51 -36 -27 -28 -37 -50 -64 -68 -64 -56 -44 -34 -33 -37 -46 -54 -58 -59 -60 -59 -59 -59 -60 -61 -60 -51 -40 -33 -36 -45 -52 -57 -60 -60 -58 -57 -55 -56 -57 -58 -59 -63 -70 -76 -80 -82 -83 -84 -84 -85 -85 -82 -72 -61 -52 -51 -56 -61 -63 -59 -52 -50 -52 -57 -60 -60 -59 -55 -52 -50 -55 -65 -76 -84 -91 -94 -94 -87 -81 -77 -76 -78 -79 -74 -66 -59 -59 -71 -80 -83 -77 -71 -67 -64 -63 -65 -69 -74 -80 -88 -91 -88 -83 -82 -80 -79 -83 -90 -97 -100 -100 -101 -103 -105 -104 -103 -104 -105 -108 -109 -109 -107 -108 -110 -112 -114 -113 -110 -108 -108 -112 -114 -114 -111 -107 -100 -90 -82 -76 -70 -66 -65 -66 -67 -70 -71 -71 -71 -76 -81 -83 -85 -86 -88 -90 -94 -96 -97 -95 -91 -88 -91 -94 -96 -96 -94 -87 -76 -67 -61 -62 -62 -59 -56 -56 -61 -67 -74 -80 -84 -86 -86 -85 -81 -80 -77 -76 -76 -79 -83 -83 -80 -76 -76 -74 -73 -71 -72 -71 -68 -66 -65 -67 -71 -74 -77 -80 -82 -81 -79 -77 -76 -74 -72 -69 -68 -66 -63 -60 -59 -59 -58 -58 -56 -54 -52 -50 -49 -49 -50 -52 -54 -55 -55 -53 -50 -47 -46 -44 -44 -45 -47 -49 -51 -52 -54 -54 -55 -57 -60 -64 -66 -67 -66 -66 -68 -70 -74 -77 -78 -77 -77 -76 -75 -75 -74 -74 -73 -74 -74 -73 -72 -72 -72 -69 -65 -63 -62 -63 -65 -68 -69 -69 -67 -64 -60 -59 -57 -55 -53 -56 -60 -62 -62 -60 -59 -59 -60 -62 -66 -69 -70 -69 -68 -68 -68 -69 -68 -65 -63 -63 -65 -69 -72 -75 -77 -77 -77 -77 -79 -81 -82 -83 -84 -85 -86 -86 -85 -85 -84 -23 -21 -23 -27 -34 -42 -50 -57 -63 -69 -79 -89 -93 -89 -91 -90 -83 -68 -58 -58 -60 -59 -53 -53 -58 -68 -77 -82 -83 -83 -81 -82 -83 -80 -71 -61 -59 -61 -67 -72 -74 -72 -70 -72 -77 -72 -63 -54 -51 -46 -46 -50 -57 -54 -49 -47 -52 -59 -61 -60 -59 -60 -64 -68 -72 -74 -76 -71 -64 -55 -51 -53 -58 -64 -68 -68 -68 -68 -70 -72 -72 -67 -58 -44 -31 -29 -38 -51 -63 -61 -55 -47 -40 -34 -35 -42 -52 -59 -60 -59 -58 -55 -54 -54 -56 -55 -48 -36 -30 -32 -43 -52 -58 -61 -60 -58 -56 -55 -56 -58 -60 -61 -63 -68 -73 -76 -79 -81 -81 -83 -85 -86 -85 -75 -62 -52 -48 -54 -64 -70 -69 -59 -52 -51 -52 -55 -58 -60 -61 -60 -55 -52 -58 -68 -80 -88 -90 -87 -80 -71 -68 -68 -72 -75 -72 -65 -59 -59 -68 -82 -89 -88 -81 -73 -70 -69 -70 -72 -72 -75 -82 -92 -94 -90 -85 -84 -85 -86 -90 -93 -95 -98 -99 -101 -104 -106 -105 -103 -103 -103 -106 -108 -110 -110 -111 -113 -115 -118 -119 -118 -117 -118 -119 -118 -113 -106 -99 -92 -85 -78 -74 -67 -64 -64 -64 -66 -72 -74 -75 -75 -79 -82 -84 -85 -85 -87 -89 -91 -92 -90 -85 -81 -81 -87 -91 -93 -92 -89 -80 -69 -61 -59 -61 -59 -56 -55 -58 -65 -69 -73 -77 -80 -83 -86 -86 -83 -82 -80 -77 -76 -79 -82 -82 -79 -75 -75 -76 -76 -74 -73 -71 -69 -68 -68 -69 -71 -74 -77 -80 -81 -79 -77 -75 -74 -72 -70 -69 -68 -66 -63 -60 -59 -59 -58 -58 -56 -54 -53 -51 -50 -50 -51 -53 -54 -54 -53 -51 -49 -47 -46 -45 -44 -45 -46 -48 -49 -50 -51 -52 -54 -56 -58 -61 -63 -64 -64 -64 -66 -69 -72 -74 -75 -74 -73 -73 -72 -72 -72 -73 -73 -73 -73 -72 -70 -70 -70 -67 -61 -60 -61 -63 -66 -69 -69 -67 -65 -63 -60 -58 -56 -56 -55 -58 -60 -61 -59 -58 -58 -59 -61 -65 -67 -68 -67 -66 -66 -66 -67 -67 -66 -61 -57 -57 -62 -66 -70 -73 -75 -77 -77 -77 -78 -81 -82 -82 -83 -85 -86 -86 -85 -84 -83 -21 -20 -21 -24 -29 -39 -50 -61 -69 -76 -86 -94 -99 -100 -100 -97 -92 -81 -67 -61 -61 -61 -55 -51 -52 -60 -69 -73 -75 -76 -77 -78 -79 -79 -73 -61 -55 -56 -63 -72 -74 -72 -71 -76 -88 -89 -84 -77 -70 -58 -52 -54 -61 -56 -47 -42 -45 -54 -62 -67 -69 -70 -71 -69 -68 -68 -68 -62 -56 -51 -49 -53 -57 -60 -62 -63 -65 -66 -67 -69 -69 -65 -54 -39 -28 -30 -40 -52 -58 -52 -45 -40 -37 -35 -39 -48 -57 -60 -59 -56 -52 -49 -49 -51 -50 -46 -36 -27 -27 -36 -49 -56 -59 -58 -55 -53 -54 -56 -59 -62 -64 -66 -68 -71 -73 -76 -78 -80 -81 -84 -86 -87 -83 -70 -57 -49 -51 -62 -74 -78 -74 -61 -55 -55 -57 -56 -58 -60 -62 -62 -57 -54 -60 -70 -82 -86 -83 -77 -70 -65 -64 -67 -71 -77 -75 -70 -68 -71 -83 -91 -93 -90 -85 -78 -73 -72 -73 -72 -71 -74 -82 -94 -95 -93 -90 -89 -89 -91 -93 -94 -93 -94 -97 -100 -104 -106 -106 -105 -104 -106 -109 -111 -112 -113 -114 -116 -118 -120 -122 -122 -122 -120 -118 -113 -104 -95 -90 -89 -85 -81 -75 -67 -63 -63 -64 -68 -74 -78 -79 -79 -81 -83 -83 -83 -83 -84 -85 -85 -84 -82 -78 -77 -81 -86 -88 -89 -88 -84 -72 -63 -58 -59 -60 -59 -60 -63 -68 -70 -70 -71 -74 -75 -80 -85 -87 -84 -82 -80 -79 -76 -78 -80 -80 -77 -74 -75 -77 -78 -76 -74 -71 -69 -69 -69 -70 -72 -75 -78 -80 -80 -78 -76 -75 -73 -71 -70 -69 -67 -65 -62 -59 -58 -56 -56 -55 -54 -54 -53 -53 -52 -52 -52 -53 -53 -52 -50 -48 -46 -45 -45 -44 -44 -44 -46 -47 -48 -49 -50 -51 -53 -54 -56 -59 -60 -62 -62 -63 -64 -66 -68 -70 -70 -70 -70 -69 -69 -70 -70 -71 -71 -72 -72 -71 -69 -69 -68 -66 -61 -59 -61 -63 -64 -65 -65 -64 -63 -62 -59 -57 -56 -55 -56 -58 -59 -60 -59 -58 -58 -59 -62 -65 -66 -65 -63 -63 -64 -64 -65 -66 -64 -58 -52 -50 -57 -63 -67 -70 -73 -75 -76 -77 -77 -79 -81 -82 -83 -84 -85 -86 -85 -84 -83 -22 -20 -20 -22 -27 -37 -50 -61 -70 -78 -88 -97 -102 -107 -108 -106 -101 -94 -80 -67 -61 -62 -59 -51 -49 -55 -64 -66 -67 -68 -70 -71 -71 -69 -63 -52 -47 -51 -61 -71 -73 -71 -71 -76 -89 -97 -99 -95 -90 -76 -65 -62 -64 -55 -45 -37 -35 -39 -51 -63 -71 -75 -70 -66 -65 -66 -63 -56 -51 -48 -50 -53 -57 -60 -61 -62 -64 -65 -64 -63 -61 -55 -45 -31 -24 -29 -40 -50 -52 -46 -39 -35 -35 -36 -41 -47 -51 -51 -49 -47 -46 -46 -48 -49 -47 -41 -30 -25 -29 -40 -51 -57 -57 -53 -49 -51 -56 -60 -64 -66 -68 -70 -71 -72 -72 -75 -79 -83 -85 -86 -88 -87 -80 -65 -54 -51 -58 -72 -82 -84 -77 -64 -61 -62 -62 -61 -60 -61 -62 -61 -57 -56 -61 -71 -79 -80 -76 -71 -68 -66 -66 -69 -74 -81 -83 -84 -86 -90 -97 -94 -89 -84 -81 -76 -73 -72 -72 -72 -72 -76 -84 -94 -97 -95 -92 -90 -91 -94 -96 -94 -92 -93 -96 -100 -104 -106 -107 -107 -108 -112 -115 -116 -115 -116 -117 -117 -118 -118 -119 -118 -115 -110 -106 -100 -92 -86 -87 -90 -88 -83 -76 -68 -64 -65 -68 -73 -80 -85 -88 -89 -88 -86 -83 -81 -81 -80 -79 -78 -78 -78 -77 -78 -82 -84 -85 -84 -83 -77 -66 -60 -60 -64 -68 -70 -73 -74 -75 -72 -69 -69 -70 -73 -77 -82 -86 -84 -81 -80 -79 -77 -77 -78 -78 -75 -73 -74 -77 -79 -77 -74 -71 -70 -69 -70 -72 -74 -78 -80 -80 -79 -78 -77 -75 -73 -71 -69 -68 -66 -63 -61 -58 -56 -54 -53 -52 -51 -52 -53 -53 -54 -54 -53 -52 -50 -49 -47 -45 -43 -43 -43 -43 -43 -43 -45 -46 -47 -48 -49 -50 -51 -52 -53 -55 -57 -59 -60 -60 -61 -62 -63 -65 -66 -66 -67 -67 -67 -67 -67 -68 -69 -69 -70 -70 -68 -68 -67 -65 -62 -60 -59 -60 -61 -61 -61 -62 -62 -61 -59 -57 -55 -55 -56 -58 -58 -59 -58 -58 -58 -60 -62 -64 -63 -62 -60 -60 -61 -62 -64 -66 -65 -59 -51 -47 -54 -60 -65 -68 -71 -73 -75 -76 -77 -77 -78 -79 -81 -83 -85 -85 -84 -83 -82 -24 -21 -20 -22 -28 -38 -50 -62 -71 -77 -87 -96 -101 -105 -111 -113 -110 -105 -91 -74 -63 -62 -61 -50 -47 -52 -62 -64 -63 -62 -61 -61 -60 -57 -52 -46 -46 -53 -62 -69 -70 -69 -68 -69 -78 -91 -97 -96 -93 -82 -72 -68 -71 -65 -54 -44 -38 -37 -42 -49 -57 -62 -60 -59 -59 -58 -54 -50 -48 -49 -54 -58 -60 -62 -63 -65 -64 -61 -56 -54 -49 -44 -36 -27 -24 -31 -40 -46 -44 -37 -34 -33 -35 -36 -39 -42 -43 -42 -42 -44 -47 -50 -51 -51 -49 -44 -33 -29 -32 -42 -51 -53 -50 -48 -50 -55 -60 -64 -67 -69 -71 -72 -74 -74 -74 -76 -80 -84 -87 -88 -89 -86 -76 -60 -53 -55 -67 -81 -85 -81 -71 -65 -65 -65 -65 -64 -61 -61 -61 -60 -58 -58 -62 -68 -72 -74 -74 -72 -70 -69 -72 -76 -81 -88 -93 -96 -99 -101 -95 -84 -77 -75 -76 -75 -75 -76 -79 -78 -76 -77 -83 -94 -97 -95 -90 -88 -90 -92 -95 -97 -97 -98 -99 -102 -106 -109 -111 -112 -113 -117 -119 -118 -115 -113 -112 -111 -110 -109 -108 -104 -99 -94 -94 -90 -84 -82 -88 -91 -88 -82 -76 -70 -68 -70 -75 -81 -85 -89 -92 -94 -96 -94 -89 -84 -81 -78 -77 -77 -80 -78 -77 -78 -82 -82 -81 -79 -75 -68 -61 -60 -63 -69 -73 -74 -75 -76 -76 -73 -70 -68 -67 -70 -75 -80 -84 -83 -80 -79 -78 -75 -74 -74 -75 -75 -73 -73 -75 -78 -77 -74 -72 -71 -72 -75 -77 -78 -79 -81 -82 -81 -79 -76 -73 -71 -70 -69 -67 -64 -61 -60 -58 -55 -53 -51 -50 -49 -50 -52 -54 -55 -54 -53 -51 -48 -47 -45 -43 -41 -41 -41 -42 -42 -42 -43 -44 -46 -46 -48 -49 -49 -49 -50 -52 -54 -56 -58 -59 -59 -59 -60 -61 -62 -64 -65 -65 -65 -64 -65 -65 -65 -66 -67 -67 -67 -66 -65 -64 -63 -60 -57 -56 -57 -58 -60 -61 -61 -60 -58 -56 -55 -55 -56 -57 -57 -58 -57 -58 -58 -59 -60 -60 -60 -59 -58 -58 -58 -60 -63 -66 -66 -62 -55 -50 -52 -57 -62 -66 -68 -71 -74 -76 -77 -77 -77 -77 -77 -81 -83 -85 -84 -82 -81 -24 -22 -22 -25 -30 -38 -50 -63 -74 -77 -85 -92 -97 -97 -106 -113 -116 -112 -100 -82 -68 -62 -60 -50 -44 -48 -58 -63 -61 -55 -50 -51 -49 -47 -47 -50 -55 -57 -60 -67 -73 -75 -74 -70 -68 -78 -85 -88 -83 -72 -63 -62 -69 -73 -66 -58 -52 -47 -43 -42 -45 -48 -51 -53 -53 -51 -48 -48 -48 -51 -55 -59 -63 -66 -68 -68 -64 -58 -49 -42 -36 -32 -29 -25 -25 -31 -37 -40 -37 -33 -32 -33 -36 -40 -42 -42 -41 -40 -42 -46 -50 -54 -55 -55 -54 -51 -43 -38 -37 -41 -46 -46 -46 -49 -55 -61 -64 -66 -68 -69 -73 -76 -78 -80 -77 -78 -81 -86 -89 -90 -88 -83 -69 -57 -56 -62 -75 -83 -80 -71 -61 -62 -66 -67 -67 -66 -64 -63 -63 -63 -60 -58 -58 -61 -67 -75 -77 -76 -73 -73 -79 -86 -93 -97 -99 -100 -98 -91 -77 -68 -66 -71 -74 -74 -77 -83 -88 -84 -79 -78 -84 -94 -95 -94 -91 -89 -87 -88 -91 -94 -96 -99 -103 -109 -114 -116 -116 -116 -117 -118 -115 -110 -104 -101 -97 -94 -92 -92 -92 -89 -86 -86 -91 -86 -81 -82 -90 -91 -86 -79 -73 -70 -71 -75 -81 -84 -87 -90 -92 -96 -99 -98 -95 -89 -85 -82 -81 -82 -82 -78 -77 -79 -82 -81 -79 -75 -69 -61 -58 -60 -65 -70 -72 -73 -73 -75 -75 -73 -70 -68 -68 -69 -73 -77 -81 -80 -78 -76 -75 -72 -71 -71 -73 -75 -74 -73 -74 -77 -76 -75 -74 -74 -76 -80 -82 -82 -82 -83 -83 -82 -79 -74 -69 -67 -67 -68 -66 -64 -61 -60 -58 -56 -53 -51 -49 -49 -50 -51 -54 -55 -55 -53 -51 -49 -47 -45 -42 -41 -40 -40 -41 -41 -41 -41 -42 -43 -44 -45 -46 -47 -47 -48 -50 -52 -55 -57 -57 -57 -57 -57 -59 -60 -62 -63 -63 -63 -62 -62 -61 -62 -63 -65 -66 -66 -65 -64 -62 -61 -58 -55 -53 -55 -56 -58 -59 -60 -58 -56 -54 -53 -54 -55 -55 -56 -57 -57 -57 -57 -58 -58 -57 -56 -56 -56 -55 -57 -61 -63 -66 -67 -64 -60 -54 -53 -54 -58 -63 -66 -69 -72 -75 -76 -76 -75 -74 -75 -78 -81 -84 -84 -82 -80 -25 -24 -25 -28 -33 -39 -49 -63 -77 -82 -86 -91 -93 -88 -95 -105 -113 -112 -106 -92 -77 -64 -59 -48 -43 -44 -54 -61 -60 -53 -44 -40 -39 -41 -45 -51 -54 -55 -58 -66 -74 -78 -79 -76 -69 -72 -77 -79 -73 -67 -63 -62 -66 -70 -69 -67 -64 -60 -53 -46 -42 -41 -48 -53 -53 -49 -44 -45 -48 -53 -58 -62 -65 -68 -71 -69 -62 -52 -42 -31 -25 -24 -25 -25 -27 -31 -35 -37 -35 -34 -33 -36 -41 -48 -50 -49 -47 -46 -48 -51 -54 -57 -59 -60 -59 -57 -53 -46 -39 -37 -40 -44 -48 -54 -61 -64 -65 -66 -68 -71 -75 -79 -81 -83 -83 -84 -86 -90 -93 -93 -90 -81 -66 -58 -60 -68 -78 -81 -73 -64 -58 -63 -68 -70 -70 -69 -67 -67 -68 -68 -65 -60 -57 -58 -66 -76 -81 -80 -77 -77 -84 -92 -98 -100 -98 -91 -80 -66 -58 -62 -70 -78 -75 -73 -78 -87 -93 -84 -78 -79 -86 -93 -95 -94 -93 -88 -84 -84 -87 -91 -96 -102 -108 -114 -118 -117 -115 -112 -110 -108 -101 -93 -87 -85 -83 -81 -80 -83 -86 -85 -85 -89 -91 -84 -80 -82 -91 -90 -84 -76 -69 -69 -73 -79 -83 -84 -86 -88 -90 -93 -98 -100 -99 -96 -90 -85 -83 -83 -82 -79 -79 -81 -84 -83 -79 -73 -65 -58 -57 -59 -65 -69 -71 -71 -72 -74 -75 -73 -71 -69 -68 -69 -71 -74 -78 -76 -75 -73 -72 -70 -69 -71 -74 -75 -74 -74 -74 -77 -77 -76 -77 -79 -81 -84 -86 -87 -86 -86 -84 -82 -79 -75 -70 -66 -65 -67 -67 -65 -63 -61 -59 -57 -55 -52 -51 -51 -51 -51 -53 -55 -55 -54 -52 -50 -49 -47 -45 -43 -42 -41 -40 -41 -40 -39 -39 -40 -41 -42 -43 -44 -46 -48 -50 -52 -54 -56 -57 -57 -57 -57 -57 -58 -60 -61 -62 -61 -60 -59 -59 -60 -62 -64 -64 -64 -63 -61 -59 -59 -58 -55 -51 -52 -53 -54 -55 -56 -54 -53 -52 -50 -51 -51 -53 -55 -57 -56 -56 -57 -57 -55 -53 -53 -53 -53 -54 -56 -59 -62 -64 -65 -65 -64 -59 -54 -52 -54 -59 -64 -67 -70 -72 -73 -73 -73 -72 -73 -76 -79 -83 -83 -82 -80 -27 -26 -27 -30 -34 -40 -48 -61 -76 -87 -91 -93 -92 -86 -88 -95 -103 -106 -106 -99 -87 -73 -60 -50 -45 -45 -50 -58 -61 -56 -45 -38 -36 -38 -41 -44 -47 -49 -53 -60 -71 -77 -80 -79 -72 -71 -74 -75 -70 -67 -66 -66 -67 -67 -66 -66 -67 -66 -61 -53 -45 -40 -45 -53 -57 -54 -48 -47 -49 -53 -58 -63 -67 -69 -71 -67 -57 -45 -33 -22 -19 -21 -25 -28 -31 -36 -39 -40 -38 -37 -36 -39 -46 -55 -59 -59 -56 -54 -55 -57 -59 -60 -62 -63 -64 -63 -60 -50 -40 -34 -38 -47 -55 -61 -64 -63 -63 -66 -70 -75 -79 -81 -83 -84 -86 -89 -92 -95 -96 -95 -90 -80 -65 -61 -66 -73 -79 -77 -68 -61 -58 -64 -68 -71 -72 -71 -69 -68 -68 -69 -66 -62 -60 -62 -70 -79 -84 -84 -81 -80 -86 -92 -95 -93 -84 -72 -60 -52 -58 -73 -87 -93 -81 -74 -78 -88 -92 -84 -80 -82 -89 -94 -96 -97 -95 -89 -85 -85 -89 -94 -99 -105 -109 -113 -112 -108 -104 -100 -98 -97 -90 -83 -81 -83 -83 -83 -84 -86 -85 -83 -85 -93 -91 -85 -81 -83 -89 -87 -82 -75 -70 -71 -76 -80 -81 -82 -83 -85 -86 -89 -94 -97 -100 -99 -92 -83 -77 -77 -82 -84 -86 -88 -88 -86 -80 -73 -66 -60 -58 -60 -66 -71 -72 -72 -72 -75 -76 -74 -72 -70 -68 -67 -69 -72 -74 -73 -71 -69 -70 -71 -72 -72 -72 -74 -75 -75 -75 -78 -79 -79 -81 -83 -86 -88 -89 -90 -89 -87 -85 -83 -80 -76 -71 -67 -64 -66 -67 -67 -65 -62 -60 -58 -56 -54 -54 -53 -53 -52 -52 -54 -54 -54 -53 -51 -50 -49 -47 -45 -42 -41 -40 -39 -37 -36 -36 -36 -38 -39 -41 -43 -45 -48 -50 -52 -53 -55 -56 -57 -57 -56 -57 -57 -59 -60 -61 -60 -59 -58 -58 -59 -60 -62 -62 -61 -60 -59 -59 -61 -60 -56 -49 -50 -50 -50 -49 -50 -49 -49 -49 -48 -48 -49 -50 -53 -55 -56 -57 -57 -56 -52 -50 -49 -50 -51 -52 -55 -58 -61 -62 -62 -63 -64 -62 -59 -55 -54 -58 -61 -64 -67 -69 -70 -71 -71 -70 -71 -73 -77 -81 -83 -82 -79 -30 -30 -30 -32 -36 -42 -49 -59 -74 -90 -98 -101 -100 -97 -94 -93 -95 -99 -105 -104 -98 -87 -72 -59 -51 -47 -48 -57 -61 -58 -48 -40 -39 -38 -37 -35 -38 -41 -46 -52 -66 -74 -79 -79 -74 -72 -73 -73 -70 -69 -69 -69 -69 -65 -63 -63 -64 -64 -61 -57 -51 -43 -43 -51 -58 -61 -58 -56 -54 -55 -58 -63 -66 -69 -70 -66 -54 -40 -26 -17 -18 -23 -29 -33 -39 -45 -49 -49 -45 -42 -40 -42 -49 -59 -65 -67 -65 -61 -60 -61 -63 -63 -64 -65 -66 -67 -64 -53 -42 -36 -41 -52 -59 -63 -63 -62 -64 -69 -75 -79 -82 -83 -84 -85 -89 -93 -96 -98 -97 -96 -90 -80 -66 -66 -70 -75 -77 -73 -65 -59 -58 -63 -68 -72 -74 -74 -71 -69 -67 -66 -64 -62 -64 -70 -79 -84 -88 -88 -85 -82 -84 -85 -85 -84 -78 -70 -61 -57 -67 -82 -95 -101 -89 -80 -80 -88 -94 -91 -88 -87 -92 -97 -99 -99 -98 -96 -92 -92 -95 -99 -101 -103 -104 -102 -98 -94 -91 -89 -91 -91 -86 -83 -85 -88 -91 -92 -91 -88 -86 -86 -89 -92 -90 -86 -85 -87 -86 -83 -80 -77 -74 -77 -80 -82 -80 -80 -80 -80 -80 -82 -85 -90 -94 -97 -90 -79 -72 -72 -81 -88 -92 -95 -93 -88 -80 -72 -66 -61 -60 -63 -70 -75 -76 -74 -74 -75 -77 -76 -73 -69 -67 -65 -66 -69 -71 -70 -69 -68 -69 -71 -72 -71 -71 -75 -76 -77 -77 -79 -81 -83 -85 -87 -90 -91 -91 -90 -89 -88 -86 -83 -80 -76 -72 -68 -66 -66 -66 -67 -67 -66 -63 -60 -58 -57 -57 -56 -55 -53 -52 -52 -53 -54 -54 -52 -51 -50 -48 -45 -42 -40 -38 -36 -33 -32 -32 -33 -36 -38 -40 -43 -45 -48 -50 -52 -54 -55 -56 -57 -57 -56 -56 -57 -57 -58 -59 -59 -58 -58 -58 -58 -59 -60 -60 -60 -59 -59 -59 -60 -61 -59 -54 -49 -45 -42 -42 -43 -45 -46 -47 -46 -45 -46 -48 -51 -53 -54 -55 -55 -53 -50 -47 -46 -47 -49 -51 -54 -56 -58 -59 -60 -61 -61 -61 -61 -60 -60 -60 -61 -62 -64 -66 -67 -68 -69 -69 -69 -71 -75 -80 -82 -81 -79 -34 -33 -33 -34 -38 -44 -49 -58 -73 -94 -105 -110 -111 -111 -110 -105 -99 -96 -101 -105 -104 -99 -88 -75 -62 -52 -48 -55 -59 -57 -49 -44 -43 -40 -36 -30 -31 -34 -39 -45 -56 -65 -69 -69 -69 -71 -72 -71 -70 -69 -70 -69 -68 -62 -58 -57 -58 -60 -58 -57 -55 -49 -43 -47 -54 -62 -66 -67 -66 -65 -64 -65 -65 -66 -69 -66 -52 -37 -23 -15 -20 -28 -36 -42 -46 -52 -57 -59 -56 -52 -49 -48 -52 -59 -66 -70 -70 -66 -63 -63 -65 -66 -65 -65 -66 -68 -66 -57 -47 -41 -45 -53 -58 -60 -60 -64 -70 -76 -80 -81 -82 -83 -85 -88 -93 -97 -98 -98 -96 -94 -89 -81 -69 -69 -72 -74 -74 -69 -63 -58 -57 -62 -68 -73 -76 -78 -75 -72 -69 -66 -64 -63 -67 -75 -85 -89 -93 -96 -94 -90 -87 -86 -86 -86 -86 -82 -75 -69 -72 -81 -92 -98 -93 -88 -89 -94 -99 -97 -95 -94 -97 -101 -104 -106 -105 -104 -101 -100 -99 -99 -97 -94 -91 -86 -82 -83 -85 -86 -91 -90 -89 -89 -91 -96 -100 -101 -99 -97 -95 -96 -97 -95 -94 -93 -94 -95 -88 -84 -82 -83 -83 -85 -88 -90 -86 -81 -77 -74 -72 -72 -75 -79 -83 -86 -81 -74 -69 -71 -80 -87 -93 -96 -95 -88 -80 -71 -65 -62 -62 -65 -74 -79 -79 -77 -75 -74 -76 -77 -75 -70 -65 -63 -64 -67 -69 -69 -68 -68 -68 -69 -70 -72 -73 -76 -77 -78 -78 -80 -82 -84 -85 -87 -91 -92 -92 -89 -86 -85 -84 -83 -80 -76 -73 -70 -67 -67 -67 -68 -68 -68 -66 -63 -60 -58 -57 -57 -56 -54 -52 -51 -51 -51 -53 -52 -51 -49 -47 -45 -42 -40 -37 -33 -30 -28 -28 -31 -35 -38 -41 -44 -46 -48 -50 -52 -54 -55 -56 -56 -57 -56 -56 -56 -56 -57 -57 -58 -58 -58 -59 -59 -60 -60 -60 -60 -59 -59 -59 -59 -60 -59 -56 -51 -44 -38 -35 -38 -40 -42 -44 -43 -43 -44 -46 -48 -49 -50 -50 -50 -49 -48 -47 -47 -47 -48 -50 -52 -54 -55 -56 -57 -58 -59 -59 -60 -61 -62 -62 -61 -61 -61 -63 -64 -66 -67 -66 -66 -69 -73 -77 -79 -79 -79 -36 -36 -36 -37 -41 -45 -48 -56 -71 -90 -104 -112 -116 -118 -122 -119 -112 -103 -99 -103 -106 -106 -102 -93 -80 -64 -53 -55 -56 -53 -49 -47 -47 -43 -37 -29 -27 -29 -33 -37 -40 -45 -47 -49 -55 -63 -68 -69 -67 -67 -67 -68 -67 -61 -49 -43 -45 -56 -59 -60 -59 -56 -50 -47 -50 -57 -63 -67 -71 -74 -74 -73 -71 -69 -68 -63 -50 -34 -21 -17 -26 -38 -49 -57 -59 -59 -61 -64 -65 -64 -61 -57 -57 -61 -66 -70 -72 -69 -66 -64 -65 -65 -65 -64 -65 -66 -66 -61 -54 -48 -47 -52 -58 -63 -67 -72 -77 -80 -81 -80 -80 -82 -86 -92 -97 -99 -99 -95 -92 -91 -88 -80 -70 -71 -72 -72 -72 -68 -63 -58 -56 -61 -68 -74 -78 -82 -79 -77 -74 -70 -65 -64 -67 -76 -86 -92 -97 -100 -101 -98 -95 -92 -92 -93 -95 -95 -92 -87 -84 -87 -92 -96 -95 -95 -96 -100 -103 -103 -103 -102 -100 -101 -103 -104 -103 -103 -101 -99 -96 -92 -89 -86 -82 -76 -75 -80 -86 -89 -93 -94 -94 -96 -98 -103 -108 -109 -108 -107 -108 -109 -108 -104 -101 -101 -102 -101 -93 -90 -90 -95 -96 -95 -95 -95 -92 -84 -78 -73 -69 -69 -71 -72 -71 -70 -67 -66 -68 -75 -82 -87 -92 -95 -94 -88 -79 -70 -66 -65 -65 -68 -75 -81 -80 -78 -76 -74 -77 -78 -76 -69 -64 -61 -63 -66 -68 -68 -68 -69 -68 -67 -70 -74 -75 -76 -77 -78 -80 -81 -82 -83 -84 -85 -88 -90 -90 -88 -84 -83 -83 -83 -81 -77 -73 -70 -68 -67 -68 -69 -70 -70 -68 -65 -62 -59 -57 -56 -55 -53 -51 -50 -49 -49 -51 -51 -50 -48 -47 -45 -42 -39 -36 -33 -30 -28 -28 -31 -35 -39 -43 -45 -47 -48 -50 -52 -53 -54 -55 -55 -56 -55 -55 -55 -55 -56 -56 -57 -57 -58 -58 -59 -60 -60 -61 -60 -60 -59 -59 -58 -57 -56 -55 -52 -46 -40 -35 -34 -35 -37 -40 -41 -42 -42 -43 -44 -45 -45 -46 -47 -47 -47 -47 -47 -47 -48 -49 -50 -51 -51 -52 -54 -56 -57 -57 -58 -58 -59 -60 -60 -60 -60 -61 -62 -64 -65 -64 -64 -66 -70 -73 -76 -77 -78 -39 -38 -38 -40 -42 -45 -48 -55 -67 -85 -100 -108 -112 -113 -123 -127 -125 -115 -104 -103 -105 -107 -107 -106 -98 -83 -66 -57 -53 -49 -47 -47 -48 -45 -38 -30 -24 -25 -29 -33 -29 -26 -29 -35 -43 -51 -58 -62 -61 -60 -60 -61 -63 -62 -49 -36 -32 -44 -57 -61 -61 -61 -60 -57 -56 -58 -65 -68 -70 -72 -73 -73 -70 -67 -65 -59 -46 -32 -21 -21 -32 -45 -57 -65 -68 -69 -70 -71 -72 -71 -66 -62 -60 -63 -67 -70 -72 -70 -66 -64 -63 -62 -62 -63 -64 -66 -67 -64 -59 -54 -51 -56 -62 -69 -73 -75 -75 -75 -75 -75 -79 -84 -91 -97 -100 -100 -97 -90 -89 -89 -85 -77 -70 -71 -71 -70 -70 -68 -63 -58 -56 -61 -68 -75 -80 -84 -82 -80 -76 -71 -66 -64 -67 -75 -86 -92 -96 -98 -100 -101 -100 -97 -97 -99 -101 -102 -102 -99 -96 -95 -97 -99 -99 -99 -101 -104 -104 -104 -102 -100 -95 -94 -95 -96 -96 -93 -91 -88 -87 -85 -88 -88 -83 -76 -78 -85 -92 -96 -99 -101 -102 -102 -105 -110 -113 -116 -116 -117 -118 -119 -118 -113 -109 -108 -108 -106 -99 -96 -98 -103 -104 -101 -98 -96 -95 -86 -79 -75 -75 -75 -73 -68 -64 -61 -62 -67 -75 -84 -88 -91 -93 -94 -93 -87 -78 -70 -67 -67 -67 -70 -76 -80 -80 -77 -75 -76 -79 -79 -75 -66 -61 -59 -62 -67 -69 -68 -68 -68 -67 -67 -70 -74 -74 -75 -77 -79 -80 -81 -83 -85 -86 -85 -86 -88 -89 -87 -83 -81 -81 -82 -79 -76 -73 -70 -68 -67 -68 -70 -72 -72 -70 -68 -65 -61 -58 -57 -56 -54 -52 -49 -47 -45 -46 -47 -48 -48 -47 -45 -43 -40 -37 -34 -31 -30 -30 -32 -35 -39 -43 -45 -46 -47 -48 -50 -52 -53 -53 -54 -54 -55 -55 -55 -55 -56 -56 -56 -55 -56 -57 -58 -60 -61 -61 -61 -61 -60 -59 -56 -54 -53 -52 -49 -46 -42 -39 -37 -36 -36 -37 -39 -41 -42 -41 -40 -41 -42 -43 -44 -45 -46 -45 -46 -47 -48 -49 -49 -49 -49 -50 -51 -53 -54 -55 -55 -56 -57 -57 -59 -60 -61 -61 -61 -62 -63 -62 -63 -65 -67 -71 -73 -75 -75