#include <bits/stdc++.h>
using namespace std;
int main() {
  string s;
  long long cs, t, i, j, k, x = 0, y, ans, q, l, p = 0, n = 0, flag = 0, a, b,
                            gc, mxn;
  getline(cin, s);
  l = s.size();
  for (i = 0; i < l; i++) {
    if (s[i] == '?') {
      if (i == 0) {
        p++;
      } else if (s[i - 2] == '+')
        p++;
      else
        n++;
    }
    if (s[i] == '=') {
      for (i = i + 2; i < l; i++) x = x * 10 + (s[i] - '0');
    }
  }
  if (n != 0) {
    mxn = (p * x - x) / n;
    mxn = min(mxn, x);
  } else
    mxn = 1;
  if (mxn == 0) mxn = 1;
  y = x + mxn * n;
  j = y / p;
  a = y % p;
  if (j != 0 && mxn >= 1 && ((a == 0 && j <= x) || (j + 1 <= x))) {
    cout << "Possible\n";
    for (i = 0; i < l; i++) {
      if (s[i] == '?') {
        if (i == 0) {
          if (a > 0)
            cout << j + 1;
          else
            cout << j;
          a--;
        } else if (s[i - 2] == '+') {
          if (a > 0)
            cout << j + 1;
          else
            cout << j;
          a--;
        } else
          cout << mxn;
      } else
        cout << s[i];
    }
    cout << endl;
  } else
    cout << "Impossible\n";
  return 0;
}
