There are N integers, A_1, A_2, ..., A_N, written on the blackboard.

You will choose one of them and replace it with an integer of your choice between 1 and 10^9 (inclusive), possibly the same as the integer originally written.

Find the maximum possible greatest common divisor of the N integers on the blackboard after your move.

Constraints

* All values in input are integers.
* 2 \leq N \leq 10^5
* 1 \leq A_i \leq 10^9

Output

Input is given from Standard Input in the following format:


N
A_1 A_2 ... A_N

Output

Print the maximum possible greatest common divisor of the N integers on the blackboard after your move.

Examples

Input

3
7 6 8


Output

2


Input

3
12 15 18


Output

6


Input

2
1000000000 1000000000


Output

1000000000
import java.io.InputStream;
import java.io.PrintStream;
import java.util.Scanner;

public class Main {
	InputStream in = System.in;
	PrintStream out = System.out;

	int gcd(int a, int b) {
		if (b == 0) {
			return a;
		}
		return gcd(b, a % b);
	}

	int gcd(int[] arr) {
		int ans = gcd(arr[0], arr[1]);
		for (int i = 2; i < arr.length; i++) {
			ans = gcd(ans, arr[i]);
		}
		return ans;
	}

	public void _main(String[] args) {
		Scanner sc = new Scanner(in);

		int N = sc.nextInt();
		int[] a = new int[N];
		for (int i = 0; i < N; i++) {
			a[i] = sc.nextInt();
		}
		sc.close();

		if (N == 2) {
			//N==2の場合、小さいほうを大きいほうに書き換えればそれが最大
			out.println(Math.max(a[0],a[1]));
			return;
		}

		int[] left = new int[N];
		int[] right = new int[N];

		left[0] = a[0];
		for (int i = 1; i < N; i++) {
			left[i] = gcd(left[i - 1], a[i]);
		}

		right[N - 1] = a[N - 1];
		for (int i = N - 2; i >= 0; i--) {
			right[i] = gcd(right[i + 1], a[i]);
		}

		int ans = 0;

		for (int i = 0; i < N; i++) {
			if (i == 0) {
				ans = Math.max(ans, right[i + 1]);
			} else if (i == N - 1) {
				ans = Math.max(ans, left[N - 2]);
			} else {
				int l = left[i - 1];
				int r = right[i + 1];

				ans = Math.max(ans, gcd(l, r));
			}
		}

		out.println(ans);
	}

	public static void main(String[] args) {
		new Main()._main(args);
	}

}
