#include<stdio.h>
#include<string.h>
int n,num[10000],dis[10000];
int cal( )
{
int Max = 0;
for( int i = 1; i <= n;++i )
{
int max = 0,pos = 0;
for( int j = 0; j <= i; ++j )//找前面已经存在且符合条件的最优解
if( dis[j] > max && num[j] < num[i] )
max = dis[j];
dis[i] += num[i] + max;//找到后把本身加进去
if( dis[i] > Max )
Max = dis[i]; }
return Max;}
int main( )
{
while( scanf( "%d",&n ),n )
{
num[0] = 0;
memset( dis,0,sizeof( dis ) );
for( int i = 1; i <= n; ++i )
scanf( "%d",&num[i] );
printf( "%d\n",cal( ) );
}
return 0;
}