#include <bits/stdc++.h>
using namespace std;
int main() {
  long r[3], a, b, c, s[3], m, d[3], rez[3][3], sum[3], cur1, cur2, sum1, sum2,
      sum3, i, j;
  cin >> r[0] >> r[1] >> r[2];
  s[0] = r[0];
  s[1] = r[1];
  s[2] = r[2];
  sort(r, r + 3);
  a = r[0];
  b = r[1];
  c = r[2];
  if ((c > (a + b)) || (((a + b + c) % 2) == 1)) {
    cout << "Impossible" << endl;
    return 0;
  }
  m = 0;
  for (i = 0; i < 3; i++) {
    if (r[i] > m) m = r[i];
  }
  d[1] = d[2] = d[0] = 0;
  if ((s[0] == r[0]) && (s[1] == r[1])) {
    d[0] = 0;
    d[1] = 1;
    d[2] = 2;
  } else if ((s[0] == r[0]) && (s[1] == r[2])) {
    d[0] = 0;
    d[1] = 2;
    d[2] = 1;
  } else if ((s[0] == r[1]) && (s[1] == r[0])) {
    d[0] = 1;
    d[1] = 0;
    d[2] = 2;
  } else if ((s[0] == r[1]) && (s[1] == r[2])) {
    d[0] = 1;
    d[1] = 2;
    d[2] = 0;
  } else if ((s[0] == r[2]) && (s[1] == r[0])) {
    d[0] = 2;
    d[1] = 0;
    d[2] = 1;
  } else {
    d[0] = 2;
    d[1] = 1;
    d[2] = 0;
  }
  sum[0] = a - ((c - (b - a))) / 2;
  sum[1] = (c - (b - a)) / 2 + (b - a);
  sum[2] = (c - (b - a)) / 2;
  for (i = 0; i < 2; i++)
    for (j = i + 1; j < 3; j++) {
      if ((i == 0) && (j == 1)) {
        rez[i][j] = sum[0];
        rez[j][i] = sum[0];
      } else if ((i == 0) && (j == 2)) {
        rez[i][j] = sum[2];
        rez[j][i] = sum[2];
      } else if ((i == 1) && (j == 2)) {
        rez[i][j] = sum[1];
        rez[j][i] = sum[1];
      }
    }
  for (i = 0; i < 3; i++) {
    cout << rez[d[i]][d[(i + 1) % 3]] << " ";
  }
  cout << endl;
}
