Problem: You are given a positive integer n.

Let S(x) be sum of digits in base 10 representation of x, for example, S(123) = 1 + 2 + 3 = 6, S(0) = 0.

Your task is to find two integers a, b, such that 0 ≤ a, b ≤ n, a + b = n and S(a) + S(b) is the largest possible among all such pairs.

Input

The only line of input contains an integer n (1 ≤ n ≤ 10^{12}).

Output

Print largest S(a) + S(b) among all pairs of integers a, b, such that 0 ≤ a, b ≤ n and a + b = n.

Examples

Input

35


Output

17


Input

10000000000


Output

91

Note

In the first example, you can choose, for example, a = 17 and b = 18, so that S(17) + S(18) = 1 + 7 + 1 + 8 = 17. It can be shown that it is impossible to get a larger answer.

In the second test example, you can choose, for example, a = 5000000001 and b = 4999999999, with S(5000000001) + S(4999999999) = 91. It can be shown that it is impossible to get a larger answer.

Solution (in JAVA):

Solution:
import java.io.IOException;
import java.util.Scanner;

public class Task1060B {

    public static void main(final String[] args) throws IOException {

        final Scanner scanner = new Scanner(System.in);

        final long n = scanner.nextLong();
        if (n <= 18) {
            System.out.println(n);
        } else {
            final String nStr = Long.toString(n);
            boolean isAll9 = true;
            for (int i = 0; i < nStr.length(); i++) if (nStr.charAt(i) != '9') isAll9 = false;
            if (isAll9) {
                System.out.println(9 * nStr.length());
            } else {
                int s1 = 9 * (nStr.length() - 1);
                long n1 = 9;
                for (int i = 0; i < nStr.length() - 2; i++) {
                    n1 *= 10;
                    n1 += 9;
                }
                long n2 = n - n1;
                int s2 = 0;
                while (n2 > 0) {
                    s2 += n2 % 10;
                    n2 /= 10;
                }
                System.out.println(s1 + s2);
            }
        }
    }

}