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.lang.*;
import java.util.*;
import java.util.stream.Collectors;
import java.io.*;

public class Bouncing  {

	public static void main(String[] args) throws IOException {
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		long copy=n;
		long bn = 0;
		while(copy>=10)
		{
			bn *=10;
			bn += 9;
			copy/=10;
			//System.out.println((long)copy+" "+(long)bn);
		}
		
		if(copy>1 && bn>0) {
			String num = Long.toString(copy-1)+Long.toString(bn);
			bn = Long.parseLong(num);
		}
		
		long sn = n-bn;
		
		//System.out.println((long)bn +" "+(long)sn);
		long sum=0;
		while(bn>0)
		{
			sum += bn%10;
			bn/=10;
		}
		while(sn>0)
		{
			sum += sn%10;
			sn/=10;
		}
		System.out.println(sum);
				
		}
}