#include <bits/stdc++.h>
using namespace std;
const int dx[] = {1, 0, -1, 0, 1, 1, -1, -1};
const int dy[] = {0, 1, 0, -1, -1, 1, 1, -1};
const double EPS = 1e-6;
const int INF = 0x3f3f3f3f;
inline int sign(const double &x) {
  if (fabs(x) < EPS) {
    return 0;
  } else {
    return x < 0 ? -1 : 1;
  }
}
int mian();
int main() {
  mian();
  return 0;
}
int gcd(int x, int y) {
  if (!x || !y) {
    return x > y ? x : y;
  }
  for (int t; (t = (x % y)); x = y, y = t)
    ;
  return y;
}
int tab[1111000] = {1, 1, 0};
int mian() {
  for (int i = 2; i < 1000000; ++i) {
    if (tab[i]) continue;
    for (int j = i + i; j <= 1000000; j += i) {
      tab[j] = 1;
    }
  }
  int n, m;
  while (scanf("%d", &n) != EOF) {
    for (int i = 1; i <= 1000; ++i) {
      if (tab[n * i + 1]) {
        printf("%d\n", i);
        break;
      }
    }
  }
  return 0;
}

### Prompt

Generate a Cpp solution to the following problem:

PolandBall is a young, clever Ball. He is interested in prime numbers. He has stated a following hypothesis: "There exists such a positive integer n that for each positive integer m number n·m + 1 is a prime number".

Unfortunately, PolandBall is not experienced yet and doesn't know that his hypothesis is incorrect. Could you prove it wrong? Write a program that finds a counterexample for any n.

Input

The only number in the input is n (1 ≤ n ≤ 1000) — number from the PolandBall's hypothesis. 

Output

Output such m that n·m + 1 is not a prime number. Your answer will be considered correct if you output any suitable m such that 1 ≤ m ≤ 103. It is guaranteed the the answer exists.

Examples

Input

3


Output

1

Input

4


Output

2

Note

A prime number (or a prime) is a natural number greater than 1 that has no positive divisors other than 1 and itself.

For the first sample testcase, 3·1 + 1 = 4. We can output 1.

In the second sample testcase, 4·1 + 1 = 5. We cannot output 1 because 5 is prime. However, m = 2 is okay since 4·2 + 1 = 9, which is not a prime number.

### Response

```cpp
#include <bits/stdc++.h>
using namespace std;
const int dx[] = {1, 0, -1, 0, 1, 1, -1, -1};
const int dy[] = {0, 1, 0, -1, -1, 1, 1, -1};
const double EPS = 1e-6;
const int INF = 0x3f3f3f3f;
inline int sign(const double &x) {
  if (fabs(x) < EPS) {
    return 0;
  } else {
    return x < 0 ? -1 : 1;
  }
}
int mian();
int main() {
  mian();
  return 0;
}
int gcd(int x, int y) {
  if (!x || !y) {
    return x > y ? x : y;
  }
  for (int t; (t = (x % y)); x = y, y = t)
    ;
  return y;
}
int tab[1111000] = {1, 1, 0};
int mian() {
  for (int i = 2; i < 1000000; ++i) {
    if (tab[i]) continue;
    for (int j = i + i; j <= 1000000; j += i) {
      tab[j] = 1;
    }
  }
  int n, m;
  while (scanf("%d", &n) != EOF) {
    for (int i = 1; i <= 1000; ++i) {
      if (tab[n * i + 1]) {
        printf("%d\n", i);
        break;
      }
    }
  }
  return 0;
}

```