#include <bits/stdc++.h>
using namespace std;
void nums(vector<int> &numeros, int n) {
  for (int i = 2; i <= n; i++) {
    if (!numeros[i]) {
      for (int j = 2 * i; j <= n; j += i) numeros[j] = i;
    }
    numeros[i] = i - numeros[i] + 1;
  }
}
int main() {
  int n;
  vector<int> numeros(1000000);
  cin >> n;
  int valor = n;
  nums(numeros, n);
  for (int i = numeros[n]; i <= n; i++) valor = min(valor, numeros[i]);
  cout << valor << endl;
  return 0;
}
