#include <bits/stdc++.h>
using namespace std;
long long ceiling(long long x, long long y) {
  if (x % y)
    return ((x / y) + 1);
  else
    return (x / y);
}
long long gcd(long long x, long long y) {
  return ((y == 0) ? x : gcd(y, x % y));
}
long long lcm(long long x, long long y) { return ((x * y) / gcd(x, y)); }
string str;
int cnt1, cnt2, cnt3;
int flag = 0;
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cin >> str;
  int len = str.size();
  for (int i = 0; i < len; i++) {
    if (str[i] == '+') {
      flag = 1;
      continue;
    }
    if (str[i] == '=') {
      flag = 2;
      continue;
    }
    if (flag == 0)
      cnt1++;
    else if (flag == 1)
      cnt2++;
    else
      cnt3++;
  }
  if (cnt1 + cnt2 - cnt3 == 2) {
    if (cnt1 > cnt2)
      cnt1--;
    else
      cnt2--;
    cnt3++;
  } else if (-cnt1 - cnt2 + cnt3 == 2) {
    cnt1++;
    cnt3--;
  }
  if (cnt1 + cnt2 == cnt3) {
    for (int i = 0; i < cnt1 + cnt2 + cnt3; i++) {
      if (i == cnt1) {
        cout << '+';
      }
      if (i == cnt1 + cnt2) {
        cout << '=';
      }
      cout << '|';
    }
  } else
    cout << "Impossible";
  return 0;
}
