N = gets.to_i
A = gets.split.map(&:to_i)

listA = A.dup
listA[0] = listA[-1]

listB = A.dup
listB[0] = listB[-1]

listC = A.dup
listC[0] = listC[1]

listD = A.dup
listD[1] = listD[0]

puts [listA.inject(&:gcd), listB.inject(&:gcd), listC.inject(&:gcd), listD.inject(&:gcd)].max
