n=int(input()) a=list(map(int,input().split())) q1=[a[0]]*4 q2=[a[0]]*4 X=10**20 for v in a[1:]: nq1=[-X]*4 nq2=[X]*4 for i in range(4): if v!=0: nq1[0]=max(nq1[0],q1[i]+v,q2[i]+v) nq1[1]=max(nq1[1],q1[i]-v,q2[i]-v) nq1[2]=max(nq1[2],q1[i]*v,q2[i]*v) nq1[3]=max(nq1[3],q1[i]//v,q2[i]//v) nq2[0]=min(nq2[0],q1[i]+v,q2[i]+v) nq2[1]=min(nq2[1],q1[i]-v,q2[i]-v) nq2[2]=min(nq2[2],q1[i]*v,q2[i]*v) nq2[3]=min(nq2[3],q1[i]//v,q2[i]//v) else: nq1[0]=max(nq1[0],q1[i]+v,q2[i]+v) nq1[1]=max(nq1[1],q1[i]-v,q2[i]-v) nq1[2]=max(nq1[2],q1[i]*v,q2[i]*v) nq2[0]=min(nq2[0],q1[i]+v,q2[i]+v) nq2[1]=min(nq2[1],q1[i]-v,q2[i]-v) nq2[2]=min(nq2[2],q1[i]*v,q2[i]*v) q1=nq1 q2=nq2 print(max(q1))