#include<bits/stdc++.h>
using namespace std;
/*
BIT的新超算的第一批使用者之一是薯片人,他对0~333的 3to go数字加大力度。
输入最多100行,每行小于100位,全为正数,但可能有前置0
求所有输入的和
*/
string ans;
string s;
void trim0(string &s)
{
auto it=s.begin();
while((*it)=='0')
{
it=s.erase(it);
}
}
void sps(string &ans,string &s)
{
reverse(ans.begin(),ans.end());
reverse(s.begin(),s.end());
int minlen=min(ans.size(),s.size());
int upup=0;//int size=minlen;
for(int i=0;i<minlen;i++)//字符串相加
{
int tmp1=ans[i]-'0';int tmp2=s[i]-'0';
int sum=tmp1+tmp2+upup;
ans[i]=sum%10+'0';
upup=sum/10;
}
if(minlen<ans.size())
{
for(int i=minlen;i<ans.size();i++)//字符串相加
{
int tmp1=ans[i]-'0';//int tmp2=s[i]-'0';
int sum=tmp1+upup;
ans[i]=sum%10+'0';
upup=sum/10;
}
}
if(minlen<s.size())
{
for(int i=minlen;i<s.size();i++)//字符串相加
{
//int tmp1=ans[i]-'0';
int tmp2=s[i]-'0';
int sum=tmp2+upup;
ans+=sum%10+'0';
upup=sum/10;
}
}
if(upup==1){ans+='1';}
reverse(ans.begin(),ans.end());
}
int main(){
cin>>s;
trim0(s);
ans=s;
while(cin>>s)
{
trim0(s);//去掉前置0
sps(ans,s);//字符串相加
//cout<<ans<<endl;
}
if(ans.size()==0){cout<<'0';}
cout<<ans;
return 0;
}