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 PYTHON3):

Solution:
import sys
# from copy import deepcopy


def main():
    inp = sys.stdin.readlines()
    main_no = int(inp[0])
    if main_no == 1:
        print(1)
        return
    if main_no < 99:
        first_half_of_no = int(main_no / 2)
        if first_half_of_no == 9:
            first_half_of_no = int(main_no / 2)
        else:
            first_half_of_no = int(main_no / 2 - 1)

        second_half_of_no = main_no - first_half_of_no
    else:
        list_first_half = [x for x in str(main_no)]
        list_first_half[0] = str(int(list_first_half[0]) - 1)
        for idx, no in enumerate(list_first_half[1:]):
            list_first_half[idx+1] = "9"
        first_half_of_no = int("".join(list_first_half))
        second_half_of_no = main_no - first_half_of_no

    whole_no_in_string = str(first_half_of_no) + str(second_half_of_no)
    sum = 0
    for no in whole_no_in_string:
        sum += int(no)


    print(sum)




main()