#include <bits/stdc++.h>
using namespace std;
// vtqi6hy80o@email.edu.pl
#define rep(i, a, b) for(lli i = a; i < b; i++)
#define lli long long int
#define ld long double
#define all(v) v.begin(), v.end()
#define hell 1000000000000000
#define pb push_back
#define pf push_front
#define vi vector<lli>
#define vip vector<pair<lli, lli>>
#define F first
#define S second
#define pi 2*acos(0.0)
#define sz(s) s.size()
#define atmod (1000000000+7)
#define mod 998244353 
// auto _C=clock();
// lli n = 10000000;
// int dx[]={1,-1,0,0};
// int dy[]={0,0,1,-1};
/*vector<bool> p(n + 1, true);
void sieve()
{
    for (long long int i = 2; i * i <= n; i++)
    {
        if (p[i])
        {
            for (long long int j = i + i; j <= n; j = j + i)
            {
                p[j] = false;
            }
        }
    }
}
*/
/*
WINNERS NEVER QUIT AND QUITTERS NEVER WIN!!
Falling down is an accident, Staying down is a choice.
*/
/*lli binpow(lli a, lli n,lli m)
{
    lli r = 1;
    a %=m ;
    while (n > 0)
    {
        if (n & 1)
        {
            r = (r * a)%m ;
        }
        a = (a * a)%m ;
        n = n / 2;
    }
    return r;
}*/
/*bool cmp(pair<lli,lli> a,pair<lli,lli> b)
{
    if(a.F<b.F) return 1;
    else if(a.F==b.F) return(a.S>b.S);
    else return 0;
}*/
/*lli WaysFromOnetoOther(lli start,lli end,lli k)
{
    lli res = 0;
    if(k==1)
    {
        return 1;
    }
    rep(i,0,4)
    {
        if(i!=end&&i!=start)
        {
            res+=WaysFromOnetoOther(i,end,k-1);
        }
    }
    return res;
}*/
/*lli npr(lli n,lli r)
{
    lli res = 1;
    rep(i,1,r+1)
    {
        res=res%atmod*(n-r+i)%atmod;
        res%=atmod;
        // res/=i;
    }
    return res;
}*/
void solve() 
{
    lli a , b;
    cin>>a>>b;
    cout<<(a*b/(double)100);
}   
int main()  
{ 
    // ios_base::sync_with_stdio(false);
    // cin.tie(0);
    // cout.tie(0); 
    //freopen("input.txt", "r", stdin);
    //freopen("output.txt", "w", stdout); 
    // sieve();
    lli t = 1;  
    // cin >> t;
    rep(i,1,t+1)
    {   
        solve();
    }
    // cerr<<"\n\n\nTime elapsed: ";
    // cout<<"\n"<<(double)(clock()-_C)*1000.0/CLOCKS_PER_SEC<<"ms\n";      
}


#include <iostream>
//#include <vector>
//#include <string>
//#include <algorithm>
//#include <math.h>
//#include <queue>
//#include <stack>
//#include <iomanip>

// sometimes used
//#include <set>
//#include <map>
//#include <numeric>
//#include <list>
//#include <deque>
//#include <unordered_map>

typedef long long LL;
//typedef long double LD;
//typedef pair<LL, LL> P;
using namespace std;
//using Graph = vector<vector<LL>>;
 
//const LL MOD=1000000007;
//const LL MOD=998244353;
//const LL MAX=100100;
//const LL NIL=-1;
//const LL INF=2000000000000000000;
//const LL SEG_VAL = 1 << 19;

int main(){
    cin.tie(0);
    ios::sync_with_stdio(0);

    LL n;
    LL k;
    cin >> n >> k;
    LL ans=0;
    for(LL i=1; i<=n; i++){
        for(LL j=1; j<=k; j++){
            ans+=100*i+j;
        }
    }

    cout << ans << endl;

    return 0;
}
