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.

import java.io.*;
import java.util.*;

public class A
{
	
	static StringBuilder st = new StringBuilder() ; 
	
	public static void main(String[] args) throws Exception 
	{
		Scanner sc = new Scanner();
		if(!oj)
			sc = new Scanner("in.txt") ; 
		
		PrintWriter out = new PrintWriter(System.out);
		
		int n = sc.nextInt() ; 
		out.println((n == 2) ? 2 : 1);	
		out.flush();
		out.close();
	}

	static class Scanner
	{
	  	BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 
	   	StringTokenizer st ;
	   	Scanner(){}
	   	Scanner(String path) throws Exception{br = new BufferedReader(new FileReader(path));}
	   	String next() throws Exception {while(st == null || !st.hasMoreTokens()) st = new StringTokenizer(br.readLine()) ; return st.nextToken();}
	   	int nextInt() throws Exception { return Integer.parseInt(next()) ; }
	   	long nextLong () throws Exception {return Long.parseLong(next());}
	   	double nextDouble () throws Exception{return Double.parseDouble(next());}
	}
	
	static void shuffle(long[] a) 
	{
		int n = a.length;
		for (int i = 0; i < n; i++) 
		{
			int r = i + (int) (Math.random() * (n - i));
			long tmp = a[i];
			a[i] = a[r];
			a[r] = tmp;
		}
	}

	private static boolean oj = System.getProperty("ONLINE_JUDGE") != null;
	private static void tr(Object... o) {if (!oj)System.out.println(Arrays.deepToString(o));
	
	}
}