#include <bits/stdc++.h>
using namespace std;
const int inf = (int)1e9;
const long long llinf = (long long)9e18;
const int N = (int)2e5 + 111;
bool bigger(string a, string b) {
  if (a.length() > b.length()) return true;
  if (a.length() < b.length()) return false;
  int n = a.length();
  for (int i = 0; i < n; i++)
    if (a[i] > b[i])
      return true;
    else if (a[i] < b[i])
      return false;
  return false;
}
string del(string s, int x, int k) {
  int n = s.length();
  for (int i = n - 1; i >= 0 && k > 0; i--)
    if ((s[i] - '0') % 3 == x) {
      s.erase(s.begin() + i);
      k--;
    }
  while (s.length() > 1 && s[0] == '0') s.erase(s.begin());
  return s;
}
int main() {
  bool can = false;
  int cnt[10] = {}, sum = 0;
  string s, ans = "0";
  cin >> s;
  int n = s.length();
  for (int i = 0; i < n; i++) {
    cnt[s[i] - '0']++;
    sum += s[i] - '0';
  }
  sum %= 3;
  if (sum == 0) {
    cout << s;
    return 0;
  } else if (sum == 1) {
    bool ok = false;
    int k = 0;
    for (int j = n - 1; j >= 0; j--)
      if ((s[j] - '0') % 3 == 1) {
        ok = true;
        break;
      }
    if (ok) {
      string t = del(s, 1, 1);
      if (t.length() > 0) {
        can = true;
        if (bigger(t, ans)) ans = t;
      }
    }
    for (int j = n - 1; j >= 0 && k != 2; j--)
      if ((s[j] - '0') % 3 == 2) k++;
    if (k == 2) {
      string t = del(s, 2, 2);
      if (t.length() > 0) {
        can = true;
        if (bigger(t, ans)) ans = t;
      }
    }
  } else {
    bool ok = false;
    int k = 0;
    for (int j = n - 1; j >= 0; j--)
      if ((s[j] - '0') % 3 == 2) {
        ok = true;
        break;
      }
    if (ok) {
      string t = del(s, 2, 1);
      if (t.length() > 0) {
        can = true;
        if (bigger(t, ans)) ans = t;
      }
    }
    for (int j = n - 1; j >= 0 && k != 2; j--)
      if ((s[j] - '0') % 3 == 1) k++;
    if (k == 2) {
      string t = del(s, 1, 2);
      if (t.length() > 0) {
        can = true;
        if (bigger(t, ans)) ans = t;
      }
    }
  }
  if (can == false)
    cout << "-1";
  else
    cout << ans;
  return 0;
}
