#define MOD 1000000000000000000
#include<math.h>
#include<stdio.h>
#include<stdlib.h>
typedef long long int lli;
int isOverflow(long long a, long long b) 
{ 
    // Check if either of them is zero 
    if (a == 0 || b == 0)  
        return 0; 
      
    long long result = a * b; 
    if (a == result / b) 
        return 0; 
    else
        return 1; 
} 

void solve(){
    int n,i,kill=0,ignore=0;
    lli inp, prod=1;
    scanf("%d",&n);
    for(i=0;i<n;i++){
        scanf("%lld",&inp);
        if(inp==0){
            kill=0;
            prod=0;
            ignore=1;
        }
        else if(!ignore && !isOverflow(prod,inp) && prod*inp<=MOD){
            prod=prod*inp;
        }
        else{
            kill=1;
        }

            
    }
        
    
    if(kill){
        printf("-1\n");
    }
    else{
        printf("%lld\n",prod);
    }
    
}

int main(){
    int t;
    // scanf("%d",&t);
    // while(t--){
        solve();
    // }
    // return 0;
}