Chouti was doing a competitive programming competition. However, after having all the problems accepted, he got bored and decided to invent some small games.

He came up with the following game. The player has a positive integer n. Initially the value of n equals to v and the player is able to do the following operation as many times as the player want (possibly zero): choose a positive integer x that x<n and x is not a divisor of n, then subtract x from n. The goal of the player is to minimize the value of n in the end.

Soon, Chouti found the game trivial. Can you also beat the game?

Input

The input contains only one integer in the first line: v (1 ≤ v ≤ 10^9), the initial value of n.

Output

Output a single integer, the minimum value of n the player can get.

Examples

Input


8


Output


1


Input


1


Output


1

Note

In the first example, the player can choose x=3 in the first turn, then n becomes 5. He can then choose x=4 in the second turn to get n=1 as the result. There are other ways to get this minimum. However, for example, he cannot choose x=2 in the first turn because 2 is a divisor of 8.

In the second example, since n=1 initially, the player can do nothing.
#include <bits/stdc++.h>
using namespace std;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  long long v;
  cin >> v;
  if (v == 1 || v == 2) {
    cout << v << "\n";
  } else {
    long long z = 0;
    long long c = 0;
    for (long long i = 1; i * i <= v; i++) {
      if (v % i == 0) {
        if (i != 1) {
          c++;
        }
        if (i != v / i) {
          long long z1 = v - (i + 1);
          if (z1 > 0 && v % z1 != 0 && v % (i + 1) != 0) {
            z++;
          }
          z1 = v - ((v / i) + 1);
          if (z1 > 0 && v % z1 != 0 && v % ((v / i) + 1) != 0) {
            z++;
          }
        }
      }
    }
    cout << 1 << "\n";
  }
  return 0;
}
