#include <bits/stdc++.h>
using namespace std;
#pragma comment(linker, "/STACK:102400000,102400000")
const int N = 1000005;
const int mod = 1e9 + 7;
long long Hash[N], p[N], Base = 10;
void Init(string si) {
  int len = si.size();
  Hash[0] = 0;
  for (int i = 0; i < len; ++i)
    Hash[i + 1] = (Hash[i] * Base % mod + si[i] - '0') % mod;
  p[0] = 1;
  for (int i = 0; i < len; ++i) p[i + 1] = p[i] * Base % mod;
}
long long get(int l, int r) {
  if (r < 0 || l - 1 < 0 || r - l + 1 < 0) return 0;
  return (Hash[r] - Hash[l - 1] * p[r - l + 1] % mod + mod) % mod;
}
string si;
int len, lenc;
void print(int lena, int lenb) {
  for (int i = 0; i <= lena - 1; ++i) putchar(si[i]);
  putchar('+');
  for (int i = lena; i <= lena + lenb - 1; ++i) putchar(si[i]);
  putchar('=');
  for (int i = lena + lenb; i <= len - 1; ++i) putchar(si[i]);
}
bool check(int lena, int lenb) {
  string s1 = si.substr(0, lena);
  string s2 = si.substr(lena, lenb);
  string s3 = si.substr(lena + lenb, len - lena - lenb);
  int flag = 0, len3 = len - lena - lenb, i, j;
  for (i = lena - 1, j = lenb - 1; i >= 0 && j >= 0; --i, --j) {
    int a1 = s1[i] - '0', a2 = s2[j] - '0', a3 = a1 + a2 + flag;
    if (a3 >= 10)
      a3 -= 10, flag = 1;
    else
      flag = 0;
    if (a3 != s3[len3 - (lena - i)] - '0') return false;
  }
  return true;
}
bool solve(int lena, int lenb) {
  if (lena > lenc || lenb > lenc) return false;
  if (lena < 0 || lenb < 0) return false;
  if (si[lena] == '0' && lenb != 1) return false;
  if (si[lena + lenb] == '0' && len - lena - lenb != 1) return false;
  if ((get(1, lena) + get(lena + 1, lena + lenb)) % mod !=
      get(lena + lenb + 1, len))
    return false;
  return check(lena, lenb);
}
int main() {
  cin >> si;
  Init(si);
  len = si.size();
  for (lenc = 1; lenc <= len - 2; ++lenc) {
    if (solve(lenc, len - lenc * 2)) {
      print(lenc, len - lenc * 2);
      return 0;
    }
    if (solve(lenc - 1, len - lenc - (lenc - 1))) {
      print(lenc - 1, len - lenc - (lenc - 1));
      return 0;
    }
    if (solve(len - lenc * 2, lenc)) {
      print(len - lenc * 2, lenc);
      return 0;
    }
    if (solve(len - lenc - (lenc - 1), lenc - 1)) {
      print(len - lenc - (lenc - 1), lenc - 1);
      return 0;
    }
  }
  return 0;
}
