#include <iostream>
#include <cmath>
#include <cstdio>
#include <algorithm>
#include <stdlib.h>
using namespace std;
int Max(int *a, int l, int r,int& maxValue)
{
if(l == r)
{
maxValue = a[l] ;
return maxValue;
}
if(l + 1 == r) // l与r之间有两个元素
{
if(a[l] >= a[r]) maxValue = a[l] ;
else maxValue = a[r] ;
return maxValue;
}
int m = (l + r) / 2 ; // 求中点
int lmax ; // 左半部份最大值
Max(a, l, m, lmax) ; // 递归计算左半部份
int rmax ; // 右半部份最大值
MaxandMin(a, m + 1, r, rmax) ; // 递归计算右半部份
maxValue = max(lmax, rmax) ; // 全部最大值
return maxValue;
}
int main(){
int a[100]={0},MAX=1,n=0;
for(int i=0;;i++){
scanf("%d",&a[i]);
char x=getchar();
n++;
if(x=='\n')break;
}
cout<<Max(a,0,n,MAX);
return 0;
}