#include<stdio.h>
int main()
{
    int n,r2;
    int flag=0;
    if(scanf("%d", &n)<1){
       return 0;
    }
    
    long long u,a[n],r=1,x,tmp;
    for(int i=0;i<n;i++){
        if(scanf("%lld", &u)<1){
            return 0;
        }
        a[i]=u;
        if(a[i]==0){
            flag=1;
        }
    }
    if(flag==1){
        r2=0;
        printf("%d",r2);
    }else{
        for(int j=0;j<n;j++){
            if(j==0){
                r=a[0];
            }else{
                tmp=r*a[j];
                x=tmp/r;
                if(a[j]==x){
                    r=tmp;
                }else{
                    //オーバーフロー
                    r2=-1;
                    printf("%d",r2);
                    return 0;
                }
            }
        }
    }
    
    if(r > 1000000000000000000||r<0){
        r2=-1;
        printf("%d",r2);
    }else{
        printf("%lld",r);
    }
    return 0;
}