#include <bits/stdc++.h>
using namespace std;
const int me = 1025;
const int mod = 1.e9 + 7;
string s;
int n, ptr = 1, neg;
vector<int> v;
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  getline(cin, s);
  if (s[0] == '?') v.push_back(1);
  for (int i = 0; i < s.size(); i++) {
    if (s[i] == '-' || s[i] == '+') v.push_back((s[i] == '-') ? -1 : 1);
  }
  int ps = 0;
  for (int i = 0; i < s.size(); i++)
    if (s[i] == '=') ps = i;
  for (int i = ps + 2; i < s.size(); i++) n = 10 * n + s[i] - '0';
  ps = 0;
  for (int i : v)
    if (i == 1) ps++;
  int ng = v.size() - ps;
  for (int i = 1; i <= n; i++)
    if (n + ng * i <= ps * n && n + ng * i >= ps) {
      cout << "Possible" << endl;
      int total = n + ng * i;
      for (int j = 0; j < v.size(); j++) {
        if (v[j] == 1) {
          if (j != 0) cout << " + ";
          if (total == ps)
            cout << 1, total--;
          else {
            int g = min(total - (ps - 1), n);
            cout << g;
            total -= g;
          }
          ps--;
        } else {
          cout << " - ";
          cout << i;
        }
      }
      cout << " = " << n << endl;
      return 0;
    }
  cout << "Impossible" << endl;
  return 0;
}
