#include <bits/stdc++.h>
using namespace std;
static const int maxn = 100010;
int n;
int digit[10];
int main() {
  while (~scanf("%d", &n)) {
    memset(digit, false, sizeof digit);
    int sum = 0;
    for (int i = 0; i < n; ++i) {
      int t;
      scanf("%d", &t);
      sum += t;
      digit[t]++;
    }
    if (digit[0] == 0) {
      printf("-1\n");
      continue;
    }
    if (sum == 0) {
      printf("0\n");
      continue;
    }
    int r = sum % 3;
    if (!r) {
      for (int i = 9; i >= 0; --i) {
        for (int j = 0; j < digit[i]; ++j) {
          printf("%d", i);
        }
      }
      printf("\n");
      continue;
    }
    bool solved = false;
    int ind = -1;
    for (int i = 0; i < 9; ++i) {
      if (i % 3 == r && digit[i]) {
        digit[i]--;
        sum -= i;
        ind = i;
        solved = true;
        break;
      }
    }
    if (solved) {
      if (sum == 0) {
        printf("0\n");
      } else {
        for (int i = 9; i >= 0; --i) {
          for (int j = 0; j < digit[i]; ++j) {
            printf("%d", i);
          }
        }
        printf("\n");
      }
      continue;
    }
    r = r == 1 ? 2 : 1;
    int cnt = 0;
    for (int i = 0; i < 9; ++i) {
      if (i % 3 == r && digit[i]) {
        digit[i]--;
        sum -= i;
        ind = i;
        cnt++;
        break;
      }
    }
    for (int i = 0; i < 9; ++i) {
      if (i % 3 == r && digit[i]) {
        digit[i]--;
        sum -= i;
        ind = i;
        cnt++;
        break;
      }
    }
    if (cnt == 2) {
      solved = true;
    }
    if (solved) {
      if (sum == 0) {
        printf("0\n");
      } else {
        for (int i = 9; i >= 0; --i) {
          for (int j = 0; j < digit[i]; ++j) {
            printf("%d", i);
          }
        }
        printf("\n");
      }
    } else {
      printf("0\n");
    }
  }
  return 0;
}
