import java.io.*;
import java.util.*;

public class DWITE_2{
	public static void main ( String args [])  throws IOException{
		
		Scanner inp = new Scanner (new BufferedReader(new FileReader("DATA2.txt")));
		PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("OUT2.txt")));
		
		int primeNum [] = new int [5];
		int c = 0;
		int prime = 2;
		int temp = 0;
		int x = 0;
		String strPrime = "";
		
		int primeCnt1= 0;
		int primeCnt2 = 0;
		int secondPrimeCnt1 =0;
		int secondPrimeCnt2 = 0;
		int secondPrimeCnt3 = 0;
		int secondPrimeCnt4 = 0;

		
		while (inp.hasNext() && c < 5) { //will continue as long as there is something to take
			primeNum[c] = inp.nextInt(); //stores the next word up to a space (a token)
			c++;
		}
		
		
		for (int i = 0; i < 5 ; i++){
			temp = primeNum[i];
			x = primeNum[i];
			primeCnt1= 0;
			primeCnt2= 0;
			
			do {
				if (isPrime(primeNum[i] - 1) == true){
					if (primeCnt1 == 0){
						secondPrimeCnt1 = primeNum[i] - 1;
						primeCnt1 = primeCnt1 + 1;
						
					}
					else if (primeCnt1 == 1)	{
						primeCnt1 = primeCnt1 + 1;
						secondPrimeCnt2 =  primeNum[i] - 1;
						
					}
						
					
					
				}
				primeNum[i] = primeNum[i] - 1;
			} while(primeCnt1 < 2);
			
			
			
			do{
				if (isPrime(temp + 1) == true){
					if (primeCnt2 == 0){
						secondPrimeCnt3 = temp + 1;
						primeCnt2 = primeCnt2 + 1;
						
					}
					else if (primeCnt2 == 1)	{
						secondPrimeCnt4 = temp + 1;
						
						primeCnt2 = primeCnt2 + 1;

					}
				}
				
				temp = temp + 1;
			} while(primeCnt2 < 2);
					
			if(x - secondPrimeCnt2 < secondPrimeCnt4 - x)
				x = secondPrimeCnt2;
			else if (secondPrimeCnt4 - x < x - secondPrimeCnt2 )
				x = secondPrimeCnt4;
			else 
				x = secondPrimeCnt4;
			
			
			if(i < 4){
				out.write(x+ "\n");
			}
			else{
				out.write(x);
			}
		
		
			
		}
	
		inp.close();
		out.close();
	}

	public static boolean isPrime (int input){
		boolean isPrime1 = true;
		
		if (input == 1)
			isPrime1 = false;
		else if (input == 2)
			isPrime1 = true;
		else if (input % 2 == 0)
			isPrime1 = false;
		else 
			for (long i = 2; i <= (Math.sqrt(input)); i++)
				if(input % i == 0){
					isPrime1 = false;
					break;
					
				}
	
		return (isPrime1);
	}
}
