/*
 * 2.cpp
 *
 *  Created on: Mar 24, 2010
 *      Author: Justin Li
 */
#include <iostream>
#include <cmath>
#include <string>
#include <vector>
#include <map>
#include <utility>
#include <queue>
#include <stack>
#include <fstream>
using namespace std;

int primes[27] = {
	2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103
};

int main() {
	ifstream in;
	in.open("DATA2.txt"); //IS THIS RIGHT?
	ofstream out;
	out.open("OUT2.txt"); //IS THIS RIGHT?
	for (int i=0; i<5; i++) {
		int n, dist=100, split, belowprime, aboveprime;
		bool prime = false;
		in >> n;
		for (int j=0; j<27; j++) {
			if (primes[j] == n) {
				split = j;
				prime = true;
				break;
			} else if (primes[j] < n && primes[j+1] > n) {
				split = j;
				break;
			}
		}
		if (!prime) {
			belowprime = primes[split-1];
			aboveprime = primes[split+2];
		} else {
			belowprime = primes[split-2];
			aboveprime = primes[split+2];
		}
		//out << belowprime <<" " << aboveprime <<" ";
		if (n-belowprime < aboveprime-n) out << belowprime << endl;
		else out << aboveprime << endl;
	}
	in.close();
	out.close();
	return 0;
}

