CF1826B Lunatic Never Content

Description

You have an array $ a $ of $ n $ non-negative integers. Let's define $ f(a, x) = [a_1 \bmod x, a_2 \bmod x, \dots, a_n \bmod x] $ for some positive integer $ x $ . Find the biggest $ x $ , such that $ f(a, x) $ is a palindrome. Here, $ a \bmod x $ is the remainder of the integer division of $ a $ by $ x $ . An array is a palindrome if it reads the same backward as forward. More formally, an array $ a $ of length $ n $ is a palindrome if for every $ i $ ( $ 1 \leq i \leq n $ ) $ a_i = a_{n - i + 1} $ .

Input Format

The first line contains a single integer $ t $ ( $ 1 \leq t \leq 10^5 $ ) — the number of test cases. The first line of each test case contains a single integer $ n $ ( $ 1 \leq n \leq 10^5 $ ). The second line of each test case contains $ n $ integers $ a_i $ ( $ 0 \leq a_i \leq 10^9 $ ). It's guaranteed that the sum of all $ n $ does not exceed $ 10^5 $ .

Output Format

For each test case output the biggest $ x $ , such that $ f(a, x) $ is a palindrome. If $ x $ can be infinitely large, output $ 0 $ instead.

Explanation/Hint

In the first example, $ f(a, x = 1) = [0, 0] $ which is a palindrome. In the second example, $ f(a, x = 2) = [1, 0, 1, 0, 0, 1, 0, 1] $ which is a palindrome. It can be proven that in the first two examples, no larger $ x $ satisfies the condition. In the third example, $ f(a, x) = [0] $ for any $ x $ , so we can choose it infinitely large, so the answer is $ 0 $ .