#include <iostream>
using namespace std;
string b[8]={"500","000","750","250","125","375","625","875"};//125的倍数
int cishu[10];//统计数里面0~9出现的次数
int main() {
    string s;//用字符串是因为给的数只能通过字符串存
    cin>>s;
    int sum=0;//sum用来统计每一位数的和,根据375=3*125,所以sum要是3的倍数
    for(int i=0;i<=s.size()-1;i++){
        sum+=s[i]-'0';//-'0'是ASCII值来进行减的,例:'1'-'0'=1
        cishu[s[i]-'0']++;//统计数里面0~9出现的次数
    }
    if(sum%3!=0){//判断是不是3的倍数
        cout<<"-1"<<endl;//不是3的倍数返回-1
        return 0;
    }
    for(int i=0;i<8;i++){
        for(int j=0;j<3;j++){
            cishu[b[i][j]-'0']--;//这一步是为了去掉s中出现的'000'/'750'...
        }
        bool flag=true;//为后面s中是否有足够的0/7...个数判断
        for(int k=0;k<=9;k++){
            if(cishu[k]<0){//个数不够
                flag=false;
                break;
            }
        }
        if(flag){
            for(int j=9;j>=0;j--){//从9开始是为了防止出现前置0
                while(cishu[j]>0){
                    cout<<j;
                    cishu[j]--;
                }
            }
            cout<<b[i];//把减去的'000','125'...输出
            return 0;
        }
        for(int j=0;j<3;j++){
            cishu[b[i][j]-'0']++;//把减去的0/7...个数加回来
        }
    }
    cout<<"-1"<<endl;
    return 0;
}
// 64 位输出请用 printf("%lld")