#include <iostream>
#include <algorithm>
using namespace std;
int smax(int* a,int n){
int mx=0;
for(int i=0;i<n;i++){
    if(a[i]>mx){
        mx=a[i];
    }
}
return mx;
}
int main() {
int n;
while(cin>>n){
    int a[2][n];
    for(int i=0;i<n;i++){
        cin>>a[0][i];
        a[1][i]=1;
    }
    int maxa=smax(&a[0][0],n);
    int count=0;
    int f=1;
    for(int i=0;i<n;i++){
        if(a[0][i]==maxa) {
            if(f==1){
                a[1][i]=0;
                f=0;
            }
            count++;}}
    int newn=n-count; 
    if(newn==0){
        cout<<maxa<<endl;
        cout<<-1<<endl;
        continue;
    }       
    int r[n-1];
    int p=0;
    for(int i=0;i<n;i++){
        if(a[1][i]==1) r[p++]=a[0][i];
    }
    sort(r,r+n-1);
    cout<<maxa<<endl;
    for(int i=0;i<n-1;i++){
        cout<<r[i]<<' ';
    }
    cout<<endl;
    }

}