#include <bits/stdc++.h>
using namespace std;
string s;
int tenpow1[1000001], tenpow2[1000001], a[1000000], b[1000000];
int main() {
  int n, val, val1, val2, val3, val4, val5, len1, len2, len3, i, j;
  cin >> s;
  n = s.length();
  tenpow1[0] = 1;
  tenpow2[0] = 1;
  for (i = 1; i <= n; i++) {
    tenpow1[i] = (1LL * 10 * tenpow1[i - 1]) % 1000000007;
    tenpow2[i] = (1LL * 10 * tenpow2[i - 1]) % 1000000009;
  }
  val = 0;
  val1 = 0;
  for (i = 0; i < n; i++) {
    val = ((1LL * val * 10) % 1000000007 + s[i] - 48) % 1000000007;
    val1 = ((1LL * val1 * 10) % 1000000009 + s[i] - 48) % 1000000009;
    a[i] = val;
    b[i] = val1;
  }
  for (i = 0; i < n; i++) {
    len1 = i + 1;
    len2 = (n - i - 1) / 2;
    len3 = (n - i) / 2;
    if (len3 >= max(len1, len2)) {
      val = a[i];
      val3 = b[i];
      val1 = (a[i + len2] - (1LL * a[i] * tenpow1[len2]) % 1000000007 +
              1000000007) %
             1000000007;
      val4 = (b[i + len2] - (1LL * b[i] * tenpow2[len2]) % 1000000009 +
              1000000009) %
             1000000009;
      val2 = (a[i + len2 + len3] -
              (1LL * a[i + len2] * tenpow1[len3]) % 1000000007 + 1000000007) %
             1000000007;
      val5 = (b[i + len2 + len3] -
              (1LL * b[i + len2] * tenpow2[len3]) % 1000000009 + 1000000009) %
             1000000009;
      if ((val + val1) % 1000000007 == val2 &&
          (val3 + val4) % 1000000009 == val5) {
        if ((len1 == 1 || s[0] != '0') && (len2 == 1 || s[len1] != '0') &&
            (len3 == 1 || s[len1 + len2] != '0')) {
          for (j = 0; j < len1; j++) cout << s[j];
          cout << "+";
          for (j = len1; j < len1 + len2; j++) cout << s[j];
          cout << "=";
          for (j = len1 + len2; j < n; j++) cout << s[j];
          return 0;
        }
      }
      len2--;
      len3++;
      if (len2 > 0 &&
          (len3 == max(len1, len2) || len3 == max(len1, len2) + 1)) {
        val = a[i];
        val3 = b[i];
        val1 = (a[i + len2] - (1LL * a[i] * tenpow1[len2]) % 1000000007 +
                1000000007) %
               1000000007;
        val4 = (b[i + len2] - (1LL * b[i] * tenpow2[len2]) % 1000000009 +
                1000000009) %
               1000000009;
        val2 = (a[i + len2 + len3] -
                (1LL * a[i + len2] * tenpow1[len3]) % 1000000007 + 1000000007) %
               1000000007;
        val5 = (b[i + len2 + len3] -
                (1LL * b[i + len2] * tenpow2[len3]) % 1000000009 + 1000000009) %
               1000000009;
        if ((val + val1) % 1000000007 == val2 &&
            (val3 + val4) % 1000000009 == val5) {
          if ((len1 == 1 || s[0] != '0') && (len2 == 1 || s[len1] != '0') &&
              (len3 == 1 || s[len1 + len2] != '0')) {
            for (j = 0; j < len1; j++) cout << s[j];
            cout << "+";
            for (j = len1; j < len1 + len2; j++) cout << s[j];
            cout << "=";
            for (j = len1 + len2; j < n; j++) cout << s[j];
            return 0;
          }
        }
      }
    } else {
      len3 = len1;
      len2 = n - len1 - len3;
      if (len2 > 0) {
        val = a[i];
        val3 = b[i];
        val1 = (a[i + len2] - (1LL * a[i] * tenpow1[len2]) % 1000000007 +
                1000000007) %
               1000000007;
        val4 = (b[i + len2] - (1LL * b[i] * tenpow2[len2]) % 1000000009 +
                1000000009) %
               1000000009;
        val2 = (a[i + len2 + len3] -
                (1LL * a[i + len2] * tenpow1[len3]) % 1000000007 + 1000000007) %
               1000000007;
        val5 = (b[i + len2 + len3] -
                (1LL * b[i + len2] * tenpow2[len3]) % 1000000009 + 1000000009) %
               1000000009;
        if ((val + val1) % 1000000007 == val2 &&
            (val3 + val4) % 1000000009 == val5) {
          if ((len1 == 1 || s[0] != '0') && (len2 == 1 || s[len1] != '0') &&
              (len3 == 1 || s[len1 + len2] != '0')) {
            for (j = 0; j < len1; j++) cout << s[j];
            cout << "+";
            for (j = len1; j < len1 + len2; j++) cout << s[j];
            cout << "=";
            for (j = len1 + len2; j < n; j++) cout << s[j];
            return 0;
          }
        }
      }
      len3 = len1 + 1;
      len2 = n - len1 - len3;
      if (len2 > 0) {
        val = a[i];
        val3 = b[i];
        val1 = (a[i + len2] - (1LL * a[i] * tenpow1[len2]) % 1000000007 +
                1000000007) %
               1000000007;
        val4 = (b[i + len2] - (1LL * b[i] * tenpow2[len2]) % 1000000009 +
                1000000009) %
               1000000009;
        val2 = (a[i + len2 + len3] -
                (1LL * a[i + len2] * tenpow1[len3]) % 1000000007 + 1000000007) %
               1000000007;
        val5 = (b[i + len2 + len3] -
                (1LL * b[i + len2] * tenpow2[len3]) % 1000000009 + 1000000009) %
               1000000009;
        if ((val + val1) % 1000000007 == val2 &&
            (val3 + val4) % 1000000009 == val5) {
          if ((len1 == 1 || s[0] != '0') && (len2 == 1 || s[len1] != '0') &&
              (len3 == 1 || s[len1 + len2] != '0')) {
            for (j = 0; j < len1; j++) cout << s[j];
            cout << "+";
            for (j = len1; j < len1 + len2; j++) cout << s[j];
            cout << "=";
            for (j = len1 + len2; j < n; j++) cout << s[j];
            return 0;
          }
        }
      }
    }
  }
  return 0;
}
