#include <bits/stdc++.h>
using namespace std;
const int N = 1e4 + 1;
vector<int> v[N];
int vis[N];
long long int cnt1 = 0, cnt2 = 0, cnt = 0, m, n, x, y, z, i, j, k, mini, d, a,
              b, c, o;
int color[N] = {0};
long long int brr[N];
void dfs(int s, int t) {
  vis[s] = 1;
  color[s] = t;
  for (int i = 0; i < v[s].size(); i++) {
    if (!vis[v[s][i]]) dfs(v[s][i], t);
  }
}
int main() {
  cin >> a >> b >> c >> d;
  for (int i = a; i <= 2 * a; i++) {
    for (int j = b; j <= 2 * b; j++) {
      for (int k = c; k <= 2 * c; k++) {
        if (i > j && j > k && k >= d && 2 * d >= k && 2 * d < j) {
          cout << i << endl << j << endl << k << endl;
          return 0;
        }
      }
    }
  }
  cout << -1;
  return 0;
}
