#include <bits/stdc++.h>
using namespace std;
int jia1[1000000],jia2[10000000],jieg[1000000],strl,strl1,strl2;
char gai[1000000];
int main()
{
	cin>>gai+1;
	strl1=strlen(gai+1);
	for(int i=1;i<=strl1;i++)
	{
		jia1[i]=gai[strl1+1-i]-'0';//去除0的码 
	}
	cin>>gai+1;
	strl2=strlen(gai+1);
	for(int i=1;i<=strl2;i++)
	{
		jia2[i]=gai[strl2+1-i]-'0';//去除0的码 
	}
	//判断长度
	strl=strl1+strl2;
	for(int i=1;i<=strl1;i++)
	{
		for(int j=1;j<=strl2;j++)
		{
			jieg[i+j-1]+=jia1[i]*jia2[j];
		}
	}
	for(int i=1;i<=strl;i++)
	{
		if(jieg[i]>9)//如果此位大于9的话
		{
			jieg[i+1]+=jieg[i]/10;//下一位加上该位的十位数(进位)
			jieg[i]%=10;//该位为进位数的个位
			if(i==strl)//如果i=最多数位
			{
				strl+=1;//最大数位加一 
			} 
		} 
	}
	//去除数组的0
	while(jieg[strl]==0 and strl>1)//当结果的最低数位为0且最高位大于0时时 
	{
		strl--;//减掉位零的数位 
	}
	//逆向输出
	for(int i=strl;i>=1;i--) 
	{
		cout<<jieg[i];
	}
	//由2025liangxiaoyu经过研究课件后编写 
}