/*
   题意:求相交两个的管体积    有可能 2R > H
        = 两个管体积 - 公共体积
   求公共体积,用积分,分2R <= H, 2R > H
   下面只算第一相象的那1/8
   1)2R <= H
     靠近中心的那些相交区域的高是√(R^2-y^2) ,底部的长也为√(R^2-y^2)
          R
     V = ∫ √(R^2-y^2) * √(R^2-y^2) * dy = 2/3R^3
          0
   2)2R > H
     这时,靠近中心的那些相交区域的高就不是√(R^2-y^2)  而是H/2
     答案就为 中间的长方体 + 外部的弧形局域(也即上面的积分公式)
                                                R
     V = (H/2)^2√(R^2-(H/2)^2) + ∫ √(R^2-y^2) * √(R^2-y^2) * dy
                                            √(R^2-(H/2)^2)
       =  (H/2)^2√(R^2-(H/2)^2)
          + 2/3R^3 - (R^2√(R^2-(H/2)^2) - ((√(R^2-(H/2)^2))^3)/3)

 
*/

#include
<cstdio>
#include
<cstring>
#include
<algorithm>
#include
<cmath>

using namespace std;

const double PI = acos(-1.0);

int main()
{
   
// freopen("in","r",stdin);
    double R,H;
    
while(~scanf("%lf%lf",&R,&H))
    
{
        
double ans = 2*PI*R*R*H,tmp;
        
if(2*<= H)
        
{
            tmp 
= R*R*R*2/3;
        }

        
else
        
{
            
double S = sqrt(R*R-(H/2)*(H/2));
            tmp 
= (H/2)*(H/2)*+ R*R*R*2/3 - (R*R*- S*S*S/3);
        }

        printf(
"%.4f\n",ans -= 8*tmp);
    }

    
return 0;
}