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.*;
import java.util.*;


public class Main {

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


        InputReader cin = new InputReader(System.in);
        PrintWriter cout = new PrintWriter(new OutputStreamWriter(System.out));
        String str=cin.next();
        Long v=Long.parseLong(str);
        int len=str.length()-1;
        String nines="";
        for(int i=0;i<len;i++){
            nines+='9';
        }
        if(nines==""){
            nines="0";
        }
        long ans=9*len;
        long res=v-Long.parseLong(nines);
        while(res>0){
            ans+=res%10;
            res/=10;
        }
        cout.println(ans);

        cout.flush();
    }

    private static class InputReader {

        public BufferedReader rea;
        public StringTokenizer tok;

        public InputReader(InputStream stream) {
            rea = new BufferedReader(new InputStreamReader(stream), 32768);
            tok = null;
        }

        public String next() {
            while (tok == null || !tok.hasMoreTokens()) {
                try {
                    tok = new StringTokenizer(rea.readLine());
                } catch (IOException e) {
                    throw new RuntimeException(e);
                }
            }
            return tok.nextToken();
        }

        public int nextInt() {
            return Integer.parseInt(next());
        }
    }
}