#include <bits/stdc++.h>
using namespace std;
int gcd(int a, int b) {
  while (a && b) {
    b %= a;
    if (b) a %= b;
  }
  return a + b;
}
int a[3000];
int main() {
  int n;
  scanf("%d", &n);
  for (int i = (0); i < (n); ++i) scanf("%d", &a[i]);
  int g = a[0];
  for (int i = (0); i < (n); ++i) g = gcd(g, a[i]);
  if (g != a[0]) {
    puts("-1");
    return 0;
  }
  printf("%d\n", 2 * n - 1);
  printf("%d", a[0]);
  for (int i = (1); i < (n); ++i) printf(" %d %d", a[i], a[0]);
  puts("");
}
