#include <bits/stdc++.h>
using namespace std;
int main() {
  string s;
  cin >> s;
  long long ans = -1;
  long long num1 = 0;
  bool flag1 = true, flag2 = true, flag3 = true;
  for (int i = 0; i < s.size() - 2; ++i) {
    if (s.size() == 1 || s.size() == 2) break;
    flag1 = true;
    if ((s[0] == '0' && i > 0) || num1 > 100000) {
      flag1 = false;
      break;
    }
    num1 = (num1 * 10) + (s[i] - '0');
    if (num1 > 1000000) flag1 = false;
    long long num2 = 0;
    for (int j = i + 1; j < s.size() - 1; ++j) {
      flag2 = true;
      if ((s[i + 1] == '0' && j > i + 1) || num2 > 100000) {
        flag2 = false;
        break;
      }
      num2 = (num2 * 10) + (s[j] - '0');
      if (num2 > 1000000) flag2 = false;
      long long num3 = 0;
      int k = j + 1;
      flag3 = true;
      for (; k < s.size(); ++k) {
        if ((s[j + 1] == '0' && k > j + 1) || num3 > 100000) {
          flag3 = false;
          break;
        }
        num3 = (num3 * 10) + (s[k] - '0');
        if (num3 > 1000000) flag3 = false;
      }
      if (flag1 && flag2 && flag3)
        if (num1 + num2 + num3 > ans) ans = num1 + num2 + num3;
    }
  }
  cout << ans << endl;
}
