#include using namespace std; void fast_io() { ios_base::sync_with_stdio(false); cin.tie(nullptr); } int main() { fast_io(); int n, m; cin >> n >> m; set not_vis, vis; for (int i = 0; i < n; i++) { int a; cin >> a; if (i) { not_vis.insert(a); } } vector ans; while (!not_vis.empty()) { int d = *not_vis.begin(); ans.push_back(d); int num = d; while (num <= m) { if (not_vis.count(num) == 0 && vis.count(num) == 0) { cout << -1 << endl; return 0; } if (not_vis.count(num)) { not_vis.erase(num); vis.insert(num); } num += d; } } cout << ans.size() << endl; for (int i : ans) { cout << i << " "; } cout << endl; }