#include <bits/stdc++.h>
using namespace std;
long long ans_a, ans_b;
int ans_L = 100;
long long add(long long a, long long b, int pos) {
  while (pos > 0) {
    b *= 10;
    pos--;
  }
  return a + b;
}
int len(long long a) {
  int res = 0;
  while (a > 0) {
    res++;
    a /= 10;
  }
  return res;
}
int dfs(long long a, long long b, long long c, long long now_a, long long now_b,
        int cp, int L, int pos) {
  if (ans_L <= L || L > 12) return 0;
  if (a == 0 && b == 0 && c == 0 && cp == 0) {
    ans_a = now_a;
    ans_b = now_b;
    ans_L = L;
    return 0;
  }
  if (c == 0) {
    dfs(0, 0, 0, add(now_a, a, pos), add(now_b, b, pos), 0, L + len(a + b + cp),
        pos);
    return 0;
  }
  if (a % 10 + b % 10 + cp == c % 10)
    dfs(a / 10, b / 10, c / 10, add(now_a, a % 10, pos),
        add(now_b, b % 10, pos), 0, L, pos + 1);
  else if (a % 10 + b % 10 + cp == c % 10 + 10)
    dfs(a / 10, b / 10, c / 10, add(now_a, a % 10, pos),
        add(now_b, b % 10, pos), 1, L, pos + 1);
  if (a % 10 != (c + 10 - b % 10 - cp) % 10)
    dfs(a * 10 + (c + 10 - b % 10 - cp) % 10, b, c, now_a, now_b, cp, L + 1,
        pos);
  if (b % 10 != (c + 10 - a % 10 - cp) % 10)
    dfs(a, b * 10 + (c + 10 - a % 10 - cp) % 10, c, now_a, now_b, cp, L + 1,
        pos);
  if (c % 10 != (a + b + cp) % 10)
    dfs(a, b, c * 10 + (a + b + cp) % 10, now_a, now_b, cp, L + 1, pos);
  return 0;
}
int main() {
  long long a, b, c;
  char tmp;
  cin >> a >> tmp >> b >> tmp >> c;
  dfs(a, b, c, 0, 0, 0, 0, 0);
  cout << ans_a << "+" << ans_b << "=" << ans_a + ans_b;
  return 0;
}
