N = int( input() ) A = list( map( int, input().split() ) ) ans = 0 def dfs( x, v ): if x == N: global ans ans = max( ans, v ) return best = max( v + abs( A[ x ] ), v * A[ x ] ) if A[ x ] != 0: best = max( best, v / A[ x ] ) dfs( x + 1, best ) dfs( 1, A[ 0 ] ) print( ans )