write a go solution for Description: Nikita is a student passionate about number theory and algorithms. He faces an interesting problem related to an array of numbers. Suppose Nikita has an array of integers a of length n. He will call a subsequence^dagger of the array special if its least common multiple (LCM) is not contained in a. The LCM of an empty subsequence is equal to 0. Nikita wonders: what is the length of the longest special subsequence of a? Help him answer this question! ^dagger A sequence b is a subsequence of a if b can be obtained from a by the deletion of several (possibly, zero or all) elements, without changing the order of the remaining elements. For example, [5,2,3] is a subsequence of [1,5,7,8,2,4,3]. Input Format: Each test contains multiple test cases. The first line of input contains a single integer t (1<=t<=2000) — the number of test cases. The description of the test cases follows. The first line of each test case contains a single integer n (1<=n<=2000) — the length of the array a. The second line of each test case contains n integers a_1,a_2,ldots,a_n (1<=a_i<=10^9) — the elements of the array a. It is guaranteed that the sum of n over all test cases does not exceed 2000. Output Format: For each test case, output a single integer — the length of the longest special subsequence of a. Note: In the first test case, the LCM of any non-empty subsequence is contained in a, so the answer is 0. In the second test case, we can take the subsequence [3,2,10,1], its LCM is equal to 30, which is not contained in a. In the third test case, we can take the subsequence [2,3,6,100,003], its LCM is equal to 600,018, which is not contained in a.. Output only the code with no comments, explanation, or additional text.