#include <bits/stdc++.h>
using namespace std;
void solve();
int main() {
  int t = 1;
  while (t--) {
    solve();
  }
  return 0;
}
namespace input {
inline int nint() {
  int res = 0;
  char c = getchar();
  while ((c < '0' || c > '9')) c = getchar();
  while (c >= '0' && c <= '9') res = res * 10 + c - '0', c = getchar();
  return res;
}
inline long long nlong() {
  long long res = 0;
  char c = getchar();
  while (c < '0' || c > '9') c = getchar();
  while (c >= '0' && c <= '9') res = res * 10 + c - '0', c = getchar();
  return res;
}
inline bool isSpace(const char &c) {
  return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1;
}
inline void next(char *str) {
  char c = getchar();
  while (isSpace(c)) c = getchar();
  size_t head = 0;
  while (!isSpace(c)) str[head++] = c, c = getchar();
  str[head] = 0;
}
inline char nchar() {
  char c = getchar();
  while (isSpace(c)) c = getchar();
  return c;
}
}  // namespace input
using namespace input;
const int N = 3e5 + 5;
char s[N];
void solve() {
  gets(s);
  int L = (int)strlen(s);
  int p = 1, m = 0;
  int n = 0;
  for (int i = 0; i < L; i++) {
    if (s[i] == '-') {
      m++;
      ;
    } else if (s[i] == '+') {
      p++;
    } else if (s[i] == '=') {
      sscanf(s + i + 1, "%d", &n);
    }
  }
  vector<int> pos(p, n), neg(m, 1);
  long long s1 = p * n;
  long long s2 = m;
  if (s1 - s2 < n) {
    puts("Impossible");
    return;
  }
  long long dif = s1 - s2 - n;
  int p1 = 0;
  while (p1 < m && dif) {
    neg[p1] += min((long long)n - 1, dif);
    dif -= min((long long)n - 1, dif);
    p1++;
  }
  int p2 = 0;
  while (p2 < p && dif) {
    pos[p2] -= min((long long)n - 1, dif);
    dif -= min((long long)n - 1, dif);
    ;
    p2++;
  }
  if (dif) {
    puts("Impossible");
  } else {
    puts("Possible");
    printf("%d", pos[0]);
    int p1 = 1, p2 = 0;
    for (int i = 0; i < L; i++) {
      if (s[i] == '-') {
        printf(" - %d", neg[p2++]);
      } else if (s[i] == '+') {
        printf(" + %d", pos[p1++]);
      }
    }
    printf(" = %d\n", n);
  }
}
