#include using namespace std; using ll = long long; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); ll N, K; cin >> N >> K; vector A(N); set s; for(auto &i : A) { cin >> i; if(i) { s.insert(i); } } ranges::sort(A); vector ans; for(ll i = 0; i < N; i++) { if(!s.count(A[i])) { continue; } ans.emplace_back(A[i]); for(ll j = A[i] * 2; j <= K; j += A[i]) { if(ranges::upper_bound(A, j) == ranges::lower_bound(A, j)) { cout << -1 << "\n"; return 0; } s.erase(j); } } cout << ans.size() << "\n"; for(auto &i : ans) { cout << i << " "; } }