#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;
}
}