#include <bits/stdc++.h>
using namespace std;
const int N=1e6;
int f[N];
int main(){
    int n,ans=1e9; cin>>n;
    for (int i=1; i<=n; ++i)
	f[i]=f[i/10]+i%10;
    for (int i=1; i<n; ++i)
	ans=min(ans,f[i]+f[n-i]);
    cout<<ans;
    return 0;
}

### Prompt

Construct a CPP code solution to the problem outlined:

Takahashi has two positive integers A and B.

It is known that A plus B equals N. Find the minimum possible value of "the sum of the digits of A" plus "the sum of the digits of B" (in base 10).

Constraints

* 2 ≤ N ≤ 10^5
* N is an integer.

Input

Input is given from Standard Input in the following format:


N


Output

Print the minimum possible value of "the sum of the digits of A" plus "the sum of the digits of B".

Examples

Input

15


Output

6


Input

100000


Output

10

### Response

```cpp
#include <bits/stdc++.h>
using namespace std;
const int N=1e6;
int f[N];
int main(){
    int n,ans=1e9; cin>>n;
    for (int i=1; i<=n; ++i)
	f[i]=f[i/10]+i%10;
    for (int i=1; i<n; ++i)
	ans=min(ans,f[i]+f[n-i]);
    cout<<ans;
    return 0;
}

```