CF632D Longest Subsequence

Description

You are given array $ a $ with $ n $ elements and the number $ m $ . Consider some subsequence of $ a $ and the value of least common multiple (LCM) of its elements. Denote LCM as $ l $ . Find any longest subsequence of $ a $ with the value $ l \le m $ . A subsequence of $ a $ is an array we can get by erasing some elements of $ a $ . It is allowed to erase zero or all elements. The LCM of an empty array equals $ 1 $ .

Input Format

The first line contains two integers $ n $ and $ m $ ( $ 1 \le n,m \le 10^{6} $ ) — the size of the array $ a $ and the parameter from the problem statement. The second line contains $ n $ integers $ a_{i} $ ( $ 1 \le a_{i} \le 10^{9} $ ) — the elements of $ a $ .

Output Format

In the first line print two integers $ l $ and $ k_{\max} $ ( $ 1 \le l \le m,0 \le k_{\max} \le n $ ) — the value of LCM and the number of elements in optimal subsequence. In the second line print $ k_{\max} $ integers — the positions of the elements from the optimal subsequence in the ascending order. Note that you can find and print any subsequence with the maximum length.