#include <bits/stdc++.h>
using namespace std;
const int maxN = 1000010;
int n, num[10][10];
long long a1, a2, b1, b2, res = 0;
void fact(int x, int y, int z) {
  while (!(x % y)) {
    ++num[z][y];
    x /= y;
  }
}
int main() {
  cin >> a1 >> b1 >> a2 >> b2;
  fact(a1, 2, 1);
  fact(a1, 3, 1);
  fact(b1, 2, 1);
  fact(b1, 3, 1);
  fact(a2, 2, 2);
  fact(a2, 3, 2);
  fact(b2, 2, 2);
  fact(b2, 3, 2);
  for (int i = 3; i >= 2; --i)
    if (num[1][i] > num[2][i]) {
      while (num[1][i] > num[2][i]) {
        if (!(a1 % i)) {
          a1 /= i;
          if (i == 3) a1 *= 2;
        } else {
          b1 /= i;
          if (i == 3) b1 *= 2;
        }
        if (i == 3) ++num[1][2];
        --num[1][i];
        ++res;
      }
    } else {
      while (num[2][i] > num[1][i]) {
        if (!(a2 % i)) {
          a2 /= i;
          if (i == 3) a2 *= 2;
        } else {
          b2 /= i;
          if (i == 3) b2 *= 2;
        }
        if (i == 3) ++num[2][2];
        --num[2][i];
        ++res;
      }
    }
  if (a1 * b1 == a2 * b2) {
    printf("%d\n", res);
    cout << a1 << " " << b1 << "\n" << a2 << " " << b2;
  } else
    printf("-1");
  fclose(stdin);
  fclose(stdout);
}
