Petr stands in line of n people, but he doesn't know exactly which position he occupies. He can say that there are no less than a people standing in front of him and no more than b people standing behind him. Find the number of different positions Petr can occupy.

Input

The only line contains three integers n, a and b (0 ≤ a, b < n ≤ 100).

Output

Print the single number — the number of the sought positions.

Examples

Input

3 1 1


Output

2


Input

5 2 3


Output

3

Note

The possible positions in the first sample are: 2 and 3 (if we number the positions starting with 1).

In the second sample they are 3, 4 and 5.
#include <bits/stdc++.h>
using namespace std;
long long bexp(long long a, long long b) {
  if (b == 0) return 1;
  if (b == 1) return a;
  long long r = bexp(a, b / 2);
  r = r * r;
  if (b % 2 == 0)
    return r;
  else
    return a * r;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  int t = 1;
  while (t--) {
    long long n, m, ans = 0, i = 0, j = 0, p = 0, l = 0, sum = 0, k = 0, q = 0,
                    r = 0, cnt = 0;
    cin >> n >> p >> q;
    if (p == 0) {
      if (q != n) {
        ans = q + 1;
      } else {
        ans = n;
      }
      cout << ans << "\n";
      continue;
    } else if (q == 0) {
      ans = 1;
      cout << ans << "\n";
      continue;
    } else if (p == 0 && q == 0) {
      ans = 1;
      cout << ans << "\n";
      continue;
    }
    if (p + 1 > n - q) {
      ans = n - p;
    } else if (p + 1 <= n - 1) {
      ans = q + 1;
    }
    cout << ans << "\n";
  }
  return 0;
}
