#include <bits/stdc++.h>
using namespace std;
int n;
char s[1000005];
long long P[1000005], Num[1000005];
long long get(int a, int b) {
  return (Num[b] - Num[a - 1] * P[b - a + 1] % 1000000007 + 1000000007) %
         1000000007;
}
void check(int a, int b) {
  if (a >= b || b >= n) return;
  if (a > n - b || b - a > n - b) return;
  if (s[1] == '0' && a > 1) return;
  if (s[a + 1] == '0' && b > a + 1) return;
  if (s[b + 1] == '0' && n > b + 1) return;
  long long aa = get(1, a);
  long long bb = get(a + 1, b);
  long long cc = get(b + 1, n);
  if ((aa + bb) % 1000000007 != cc) return;
  for (int k = 1; k <= n; k++) {
    cout << s[k];
    if (k == a) cout << '+';
    if (k == b) cout << '=';
  }
  cout << endl;
  exit(0);
}
int main() {
  cin >> (s + 1);
  n = strlen(s + 1);
  P[0] = 1;
  Num[0] = 0;
  for (int i = 1; i <= n; i++) {
    P[i] = 10 * P[i - 1] % 1000000007;
    Num[i] = (10 * Num[i - 1] + s[i] - '0') % 1000000007;
  }
  for (int i = 1; i <= n; i++) {
    check(i, n - i);
    check(i, n - i - 1);
    check(i, n - (n - i) / 2);
    check(i, n - (n - i) / 2 - 1);
  }
}
