#include <bits/stdc++.h>
char s[100010];
int main() {
  scanf("%s", &s);
  int n = strlen(s), b = 0;
  for (int i = 0; i < n; i++)
    if ((s[i] - '0') % 3 != 0) b += (s[i] - '0') % 3;
  b %= 3;
  int lll = 0 - 1, xz = -1;
  if (b == 0) return printf("%s", s) * 0;
  if (b == 2) {
    for (int i = n - 1; i >= 0; i--)
      if ((s[i] - '0') % 3 == 2) {
        int j;
        if (n == 1) break;
        for (j = 0; j < n; j++)
          if (j != i && s[j] != '0') break;
        if (j < i) j++;
        xz = 2;
        lll = n - j;
        break;
      }
    int mmk = -250;
    for (int i = n - 1; i >= 0; i--)
      if ((s[i] - '0') % 3 == 1)
        if (mmk == -250)
          mmk = i;
        else {
          int j;
          if (n == 2) break;
          for (j = 0; j < n; j++)
            if (j != i && j != mmk && s[j] != '0') break;
          if (j < i) j++;
          if (j - 1 < mmk) j++;
          if (n - j > lll) xz = 1, lll = n - j;
          break;
        }
    if (xz == -1) return printf("-1") * 0;
    if (lll == 0) return printf("0") * 0;
    if (xz == 1) {
      mmk = -250;
      for (int i = n - 1; i >= 0; i--)
        if ((s[i] - '0') % 3 == 1)
          if (mmk == -250)
            mmk = i;
          else {
            int j;
            for (j = 0; j < n; j++)
              if (j != i && j != mmk && s[j] != '0') break;
            for (int k = j; k < n; k++)
              if (k != i && k != mmk) printf("%c", s[k]);
            break;
          }
    }
    if (xz == 2) {
      for (int i = n - 1; i >= 0; i--)
        if ((s[i] - '0') % 3 == 2) {
          int j;
          for (j = 0; j < n; j++)
            if (j != i && s[j] != '0') break;
          for (int k = j; k < n; k++)
            if (k != i) printf("%c", s[k]);
          break;
        }
    }
  } else {
    for (int i = n - 1; i >= 0; i--)
      if ((s[i] - '0') % 3 == 1) {
        int j;
        if (n == 1) break;
        for (j = 0; j < n; j++)
          if (j != i && s[j] != '0') break;
        if (j < i) j++;
        if (n - j > lll) xz = 1, lll = n - j;
        break;
      }
    int mmk = -250;
    for (int i = n - 1; i >= 0; i--)
      if ((s[i] - '0') % 3 == 2)
        if (mmk == -250)
          mmk = i;
        else {
          int j;
          if (n == 2) break;
          for (j = 0; j < n; j++)
            if (j != i && j != mmk && s[j] != '0') break;
          if (j < i) j++;
          if (j - 1 < mmk) j++;
          if (n - j > lll) xz = 2, lll = n - j;
          break;
        }
    if (xz == -1) return printf("-1") * 0;
    if (lll == 0) return printf("0") * 0;
    if (xz == 1)
      for (int i = n - 1; i >= 0; i--)
        if ((s[i] - '0') % 3 == 1) {
          int j;
          for (j = 0; j < n; j++)
            if (j != i && s[j] != '0') break;
          for (int k = j; k < n; k++)
            if (k != i) printf("%c", s[k]);
          break;
        }
    if (xz == 2) {
      mmk = -250;
      for (int i = n - 1; i >= 0; i--)
        if ((s[i] - '0') % 3 == 2)
          if (mmk == -250)
            mmk = i;
          else {
            int j;
            for (j = 0; j < n; j++)
              if (j != i && j != mmk && s[j] != '0') break;
            for (int k = j; k < n; k++)
              if (k != i && k != mmk) printf("%c", s[k]);
            break;
          }
    }
  }
  return 0;
}
