#include <bits/stdc++.h>
using namespace std;
const int INF = (int)2e9 + 10;
const int mod = (int)2e8 + 1312312;
const int N = (int)1e6 + 10;
const long long LLINF = (long long)1e18 + 10;
const long double pi = acos(-1.0);
const long double eps = (long double)1e-6;
template <typename T1, typename T2>
bool umin(T1 &x, const T2 &y) {
  if (x > y) return x = y, true;
  return false;
}
template <typename T1, typename T2>
bool umax(T1 &x, const T2 &y) {
  if (x < y) return x = y, true;
  return false;
}
template <typename T>
T getint() {
  char c = getchar();
  T p = 1, x = 0;
  while (c == ' ' || c == '\n') c = getchar();
  if (c == '-') p = -1, c = getchar();
  while (c >= '0' && c <= '9') x = x * 10 + c - '0', c = getchar();
  return x * p;
}
int n;
char a[N];
string s;
int h[N], pw[N];
void solve() {
  int bp = 1;
  pw[0] = 1;
  for (int i = 1; i <= n; ++i) {
    bp = 10ll * bp % mod;
    h[i] = (10ll * h[i - 1] % mod + (a[i] - '0')) % mod;
    pw[i] = bp;
  }
}
int gethash(int l, int r, int m) {
  int res = h[r] - (1ll * h[l - 1] * pw[r - l + 1] % mod);
  if (res < 0) res += mod;
  return res;
}
bool check(int l, int r) {
  if (a[l + 1] == '0' && l + 1 != r - 1) return false;
  if (a[r] == '0' && r != n) return false;
  if (r - l < 2) return false;
  if (r > n) return false;
  int a = gethash(1, l, r - 1);
  int b = gethash(l + 1, r - 1, r - l - 1);
  int c = gethash(r, n, 0);
  if ((a + b) % mod == c) {
    return true;
  }
  return false;
}
int main() {
  srand(time(NULL));
  ios_base::sync_with_stdio(0);
  cin >> s;
  n = s.size();
  for (int i = 1; i <= n; ++i) a[i] = s[i - 1];
  solve();
  int t1 = -1, t2 = -1;
  for (int pref = 1; pref <= n; ++pref) {
    if (check(pref, n - pref + 1)) {
      t1 = pref, t2 = n - pref;
      break;
    }
    if (check(pref, n - pref)) {
      t1 = pref, t2 = n - pref - 1;
      break;
    }
    if (check(pref, pref + (n - pref) / 2 + 1)) {
      t1 = pref, t2 = pref + (n - pref) / 2;
      break;
    }
  }
  for (int i = 1; i <= n; ++i) {
    cout << a[i];
    if (i == t1) cout << '+';
    if (i == t2) cout << '=';
  }
  return 0;
}
